From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Rune.Slot.Thing at rsyd.dk Mon Feb 1 05:12:00 2016 From: Rune.Slot.Thing at rsyd.dk (Rune Slot Thing) Date: Mon, 1 Feb 2016 10:12:00 +0000 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <006a01d0fbcb$6c182940$44487bc0$@gmail.com> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> Message-ID: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Dear RTK team, A colleague of mine has just started working with the CUDA functionalities of RTK, and during startup he would like to search the mailing list for previous Q&A?s. I have informed him of the solution provided below, but he suggests that the mailing list could either be subscribed to gmane.org or possibly moved to Google Groups or a similar forum, where searching is possible. Has any of these options been considered by the consortium, and discarded for some reason? Or could it be beneficial to add a service like gmane to provide new users with all the valuable help that already exists in the archive? Thanks for providing a useful code, and for the always helpful contributions and answers from the developing team as well as the experienced users. Best regards, Rune Slot Thing PhD Student Institute of Clinical Research, University of Southern Denmark Laboratory of Radiation Physics, Odense University Hospital rune.slot.thing at rsyd.dk Fra: Rtk-users [mailto:rtk-users-bounces at public.kitware.com] P? vegne af Yang K Park Sendt: 1. oktober 2015 00:00 Til: 'Joel Beaudry' Cc: rtk-users at public.kitware.com Emne: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Joel, Even though I?m a windows user, I managed to carry out your method using Cygwin. My command was: wget -r -l1 --no-parent ?O rtkQA.txt http://public.kitware.com/pipermail/rtk-users/ Thank you very much for your help! Yang From: Joel Beaudry [mailto:joelbeaudry at gmail.com] Sent: Wednesday, September 30, 2015 5:19 PM To: Yang K Park > Subject: Re: [Rtk-users] How to search for previous Q/A of RTK community? Hi Yang, "wget" can download all texts file from their respective month. Something like this below should work. wget -r -l1 --no-parent -A.txt http://public.kitware.com/pipermail/rtk-users/ Cheers, Joel On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: Hi all, This could be a silly question but, I?m just wondering if there is any way to download all the previous threads (as a text file) so that I can search through it using some key words. What I have found so far is this one: http://public.kitware.com/pipermail/rtk-users/ However, to find something I have to open each text file one by one. I?m trying to find a better way so that I can avoid bothering someone with questions that had been already answered before. Any suggestion would be highly appreciated. Thanks. Yang _______________________________________________ Rtk-users mailing list Rtk-users at public.kitware.com http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From solomoncztang at gmail.com Wed Feb 3 18:25:55 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Wed, 3 Feb 2016 15:25:55 -0800 Subject: [Rtk-users] Isocenter question Message-ID: Dear rtk-users, I am having success with forward projection and reconstruction of complete cases much like in the example from the wiki. However, I am interested in creating projections of cropped images. I took the 00.mha from the example and cropped it. When I create the projection, using rtkforwardprojections, the cropped projection rotates around the isocenter of the original uncropped file around the AP axis as expected. Is there a way to create a projection of a cropped image such that the cropped projection rotates around a newly centered AP axis? I am certain that the origin and spacing values of the geometry are correct. I have tried messing with the sid and the sdd values but they do not influence the distance between the isocenter and the cropped object. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 4 01:14:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 07:14:12 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: Message-ID: <56B2EC34.3070307@creatis.insa-lyon.fr> Hi, If you want to move a volume around space and keep the same geometry for the source and detector positions, the best is to modify the origin of your itk image. I don't know what is the original file format but with mhd files, you simply have to change the Offset value in the mhd file. Good luck, Simon On 04/02/2016 00:25, Solomon Tang wrote: > Dear rtk-users, > > I am having success with forward projection and reconstruction of > complete cases much like in the example from the wiki. However, I am > interested in creating projections of cropped images. I took the > 00.mha from the example and cropped it. When I create the projection, > using rtkforwardprojections, the cropped projection rotates around the > isocenter of the original uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they > do not influence the distance between the isocenter and the cropped > object. > > Thanks > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonas.westberg at rsyd.dk Thu Feb 4 07:51:20 2016 From: jonas.westberg at rsyd.dk (Jonas Westberg Jahn) Date: Thu, 4 Feb 2016 12:51:20 +0000 Subject: [Rtk-users] FDK and SART with GPU support is not terminating Message-ID: We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) - Microsoft Visual Studio (Express) 2013 - CMake 3.4 - CUDA dev 7.5 - FFTW 3.3.4 (precompiled 64bit) - ITK 4.8.2 - RTK (from Git 2016-01-20) Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" The following test works rtksimulatedgeometry -n 180 -o geometry.xml rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. Regards, Jonas Westberg MS in Computer Science ; Software Developer Department of Oncology Laboratory of Radiation Physics jonas.westberg at rsyd.dk?- www.ouh.dk OUH Odense University Hospital Sdr. Boulevard 29, Entrance 97, 5000 Odense C Denmark From solomoncztang at gmail.com Thu Feb 4 13:06:45 2016 From: solomoncztang at gmail.com (Solomon Tang) Date: Thu, 4 Feb 2016 10:06:45 -0800 Subject: [Rtk-users] Isocenter question In-Reply-To: <56B2EC34.3070307@creatis.insa-lyon.fr> References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi Simon, Thanks for the quick reply. This solved the issue I was having. I simply changed the offset value in the mhd file, created the projection and moved the offset value of the final reconstruction back to its original value so the world coordinates would be the same. Just as a side question, do you know what the center of rotation values are used for in mhd files? They're all 0 0 0 and I am not noticing any differences when I change the values. On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit wrote: > Hi, > If you want to move a volume around space and keep the same geometry for > the source and detector positions, the best is to modify the origin of your > itk image. I don't know what is the original file format but with mhd > files, you simply have to change the Offset value in the mhd file. > Good luck, > Simon > > > On 04/02/2016 00:25, Solomon Tang wrote: > > Dear rtk-users, > > I am having success with forward projection and reconstruction of complete > cases much like in the example from the wiki. However, I am interested in > creating projections of cropped images. I took the 00.mha from the example > and cropped it. When I create the projection, using rtkforwardprojections, > the cropped projection rotates around the isocenter of the original > uncropped file around the AP axis as expected. > > Is there a way to create a projection of a cropped image such that the > cropped projection rotates around a newly centered AP axis? > > I am certain that the origin and spacing values of the geometry are > correct. I have tried messing with the sid and the sdd values but they do > not influence the distance between the isocenter and the cropped object. > > Thanks > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://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 4 14:58:33 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 4 Feb 2016 20:58:33 +0100 Subject: [Rtk-users] Isocenter question In-Reply-To: References: <56B2EC34.3070307@creatis.insa-lyon.fr> Message-ID: Hi, No idea. I would try to pop the question on the itk mailing list, I believe that someone defined this file format. Thanks for reporting that this solved this issue, Simon On Thu, Feb 4, 2016 at 7:06 PM, Solomon Tang wrote: > Hi Simon, > > Thanks for the quick reply. This solved the issue I was having. I simply > changed the offset value in the mhd file, created the projection and moved > the offset value of the final reconstruction back to its original value so > the world coordinates would be the same. > > Just as a side question, do you know what the center of rotation values > are used for in mhd files? They're all 0 0 0 and I am not noticing any > differences when I change the values. > > On Wed, Feb 3, 2016 at 10:14 PM, Simon Rit > wrote: > >> Hi, >> If you want to move a volume around space and keep the same geometry for >> the source and detector positions, the best is to modify the origin of your >> itk image. I don't know what is the original file format but with mhd >> files, you simply have to change the Offset value in the mhd file. >> Good luck, >> Simon >> >> >> On 04/02/2016 00:25, Solomon Tang wrote: >> >> Dear rtk-users, >> >> I am having success with forward projection and reconstruction of >> complete cases much like in the example from the wiki. However, I am >> interested in creating projections of cropped images. I took the 00.mha >> from the example and cropped it. When I create the projection, using >> rtkforwardprojections, the cropped projection rotates around the isocenter >> of the original uncropped file around the AP axis as expected. >> >> Is there a way to create a projection of a cropped image such that the >> cropped projection rotates around a newly centered AP axis? >> >> I am certain that the origin and spacing values of the geometry are >> correct. I have tried messing with the sid and the sdd values but they do >> not influence the distance between the isocenter and the cropped object. >> >> Thanks >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 07:12:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 13:12:12 +0100 Subject: [Rtk-users] FDK and SART with GPU support is not terminating In-Reply-To: References: Message-ID: <56B4919C.8030509@creatis.insa-lyon.fr> Hi, Thank you very much for your report. Unfortunately, we can't reproduce it on our Windows and Linux machines and I have no idea what is the issue. Can you try to run it from MSVC and pause it when it's stucked to find our where it is stucked? You might have to compile RTK with the debug info (RelWithDebInfo). I hope that we can find out what is the issue. Thanks for your help, Simon On 04/02/2016 13:51, Jonas Westberg Jahn wrote: > We have curerntly testing RTK with GPU support on a Lenovo P500 Workstation (Windows 7 64 bit, Xeon processor, 8GB RAM, and nVidia Quadro K620) > > - Microsoft Visual Studio (Express) 2013 > - CMake 3.4 > - CUDA dev 7.5 > - FFTW 3.3.4 (precompiled 64bit) > - ITK 4.8.2 > - RTK (from Git 2016-01-20) > > Copied "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" to "amd64" (in bin folder) to make nvcc to work in MS VS Express, and created vcvars64.bat with the contents "CALL setenv /x64" > > The following test works > > rtksimulatedgeometry -n 180 -o geometry.xml > rtkprojectgeometricphantom -g geometry.xml -o projections.mha --spacing 2 --dimension 256 --phantomfile SheppLogan.txt > rtkadmmtotalvariation -p . -r projections.mha -o rtkadmmtotalvariation.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkadmmwavelets -p . -r projections.mha -o rtkadmmwavelets.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > rtkconjugategradient -p . -r projections.mha -o rtkconjugategradient.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > Fdk and sart does execute and create the output file when done processing. The GPU and CPU usage drops to zero, memory is still allocated but the process does not terminate! > > rtkfdk -p . -r projections.mha -o fdk.mha -g geometry.xml --spacing 2 --dimension 256 --hardware cuda > rtksart -p . -r projections.mha -o sart.mha -g geometry.xml --spacing 2 --dimension 256 --fp CudaRayCast --bp CudaVoxelBased > > You could kill the process manually but this would require monitoring the output file, GPU and CPU usage - not an ideal solution. > > PS: I work with Rune Think at Odense University Hospital that also have collaborated to rtk by providing data for testing on cone beam from Elekta. I configure and compile rtk and he is using it in his Pd.D. > > Regards, > > Jonas Westberg > MS in Computer Science ; Software Developer > Department of Oncology > Laboratory of Radiation Physics > jonas.westberg at rsyd.dk - www.ouh.dk > > OUH > Odense University Hospital > > Sdr. Boulevard 29, Entrance 97, 5000 Odense C > Denmark > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users From simon.rit at creatis.insa-lyon.fr Fri Feb 5 09:32:08 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 15:32:08 +0100 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: References: Message-ID: <56B4B268.1040307@creatis.insa-lyon.fr> Hi MG, Sorry, I realized I said something stupid. Using tif or mha won't make any difference because there is a branching on the pixel type in the projectionsreader (search for ushort in the graph of the doxygen doc ) and unsigned short are handled differently. The enclosed pyhon code will reproduce the same as my previous command line application. The commented code in it is what I initially used to read projections without any processing, i.e., assuming line integrals. I still think there is a problem in the geometry but someone (you?) has to spend sometime trying to understand what are the parameters from the Matlab code. Keep us posted and good luck, Simon On 28/01/2016 22:27, MG Vallet wrote: > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these > parameters can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. > I want first to reproduce your output. You said earlier it's easy to > convert a series of tiff image into a mha file using SimpleRTK. Do you > mean by writing a short program, or is it possible from the command > line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L >: > > Hi MG, > > Sometimes, the progressive deformation from the center of rotation > to the edge of the image is caused by wrong sdd/sid ratio. Such as > change in the geometry will lead to distortion of the image and > wrong magnification. > > Maybe you can play with that parameter and report your result. > > Cheers, > > Louie > > Sent from Mail for > Windows 10 > > > *From: *Simon Rit > *Sent: *Tuesday, January 26, 2016 13:24 > *To: *MG Vallet > *Cc: *rtk-users at public.kitware.com > > *Subject: *Re: [Rtk-users] Sophia beads reconstruction > > Hi, > > I think it's likely a problem with parameters. The best would be > to obtain them from the Matlab code they provide. > > Good luck, > > Simon > > On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet > wrote: > > Hi Simon, > > this was a point I missed. I had to do the log mapping. > > I must say, I do not use RTK from shell. I just plugged the > objects > > FDKConeBeamReconstructionFilter > and ThreeDCircularProjectionGeometry from RTK into a > visualisation software. That's the reason I'm not absolutely > sure about the length parameter setting. > > Anyway, I'm now pretty close to your result. I believe the > only difference is the progressive deformation of beads with > the distance to center. > > What's your opinion : is there another step I might have > missed, or is it more likely a problem with parameters ? > > MG > > 2016-01-21 14:22 GMT-05:00 Simon Rit > >: > > Not exactly. rtk::FDKConeBeamProjectionFilter assumes that > you pass the line integral (ln(I0/I)). But rtkfdk uses the > ProjectionsReader to read the projections and converts > them depending on the type: for mha or mhd, it just reads > it and nothing else. For tif, it assumes that I is passed, > try to guess I0 (or gets it from the cmd line) and > computes ln(I0/I). > So from each tif projection, instead of letting them go > through the ProjectionsReader in RTK, directly use the > ImageReader, stack them and pass it to the reconstruction > algorithm. In other words, if you use SimpleRTK, use > ImageSeriesReader instead of ProjectionsReader. > Regarding the geometry, it would be nice to be confident > in the geometry parameters, maybe from their Matlab code? > Simon > > On 21/01/2016 20:02, MG Vallet wrote: > > Hi Simon and Cyril, > > I really appreciate your insight. > > By examining the parameters of the acquisition, I saw > that the center must effectively be offset (4.8 mm in > both directions). For the attached image, I also > increases sdd and sid by a factor 1000, just in case I > would be wrong in units. It reduces the first default > I pointed out in my first message. Also note that my > input dataset was SophiaBeads_512_averaged. > > Regarding the pre-processing mentioned by Simon, I > need more help. Is it as simple as the FDK filter > assumes that the input is intensity, but the dataset > provides -ln(I/I0) ? > > Regards, > > mg > > 2016-01-20 3:33 GMT-05:00 Simon Rit > >: > > Hi, > > I quickly checked SophiaBeads_64_averaged.zip. > First, it seems that what is provided is directly > the line integral. RTK will process the tif images > as if it were a photon count so I converted the > tif projections to mha to avoid this. For the > conversion, I used another piece of software but > you can easily do the same thing with SimpleRTK. > > Second, I used the enclosed script which gives me > a much better result. I have however a geometry > problem. I think they provide a Matlab piece of > code to get the center of rotation. If you can run > it and find out what is this center, then you can > use it to configure the geometry better with the > options --proj_iso_x and --proj_iso_y. > > Good luck, > > Simon > > On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet > > wrote: > > Thanks Cyril! > > going to carefully check my inputs and I give > you some news. > > mgv > > 2016-01-19 10:33 GMT-05:00 Cyril Mory > >: > > Hi, > > It looks like the geometry is wrong > indeed, because I have never seen such > artifacts. > > Hope that helps, > Cyril > > Le 19/01/2016 16:19, MG Vallet a ?crit : > > Dear rtk-users, > > I applied the > FDKConeBeamReconstructionFilter to a > data set from > https://zenodo.org/record/16539. > > This is a plastic tube filled with > glass beads that has been scanned. > > Attached is a view of the > reconstructed central slice. It is > found that: > > 1. the beads are quickly deformed > outside the center > 2. each one has a halo, or a shadow > (dont know the proper term) > > My question is if these are simply > expected artifacts. I am not 100% sure > I properly set the geometry parameters. > > Regards, > > mgv > > _______________________________________________ > > Rtk-users mailing list > > Rtk-users at public.kitware.com > > > http://public.kitware.com/mailman/listinfo/rtk-users > > > > > > > L'absence de virus dans ce courrier > ?lectronique a ?t? v?rifi?e par le > logiciel antivirus Avast. > www.avast.com > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: fdk.py Type: text/x-python-script Size: 1518 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 5 10:36:43 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 5 Feb 2016 16:36:43 +0100 Subject: [Rtk-users] How to search for previous Q/A of RTK community? In-Reply-To: <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> References: <004701d0fbc2$d89c1800$89d44800$@gmail.com> <006a01d0fbcb$6c182940$44487bc0$@gmail.com> <18E0770FE83C1C4BBBCC4C7C1C48F7E18A6D1423@SRVODEEXCH03.Rsyd.net> Message-ID: <56B4C18B.1000808@creatis.insa-lyon.fr> Hi Rune, Thanks for the suggestion. I personally like the mailing list better than the forum and this choice had been discussed at the beginning. But I could raise this suggestion at the next RTK meeting. Meanwhile, I have sent a request to suscribe to gmane.org. Another option is to search via google using their "site:" option, e.g., "Rune site:http://public.kitware.com/pipermail/rtk-users/". Simon On 01/02/2016 11:12, Rune Slot Thing wrote: > > Dear RTK team, > > A colleague of mine has just started working with the CUDA > functionalities of RTK, and during startup he would like to search the > mailing list for previous Q&A?s. I have informed him of the solution > provided below, but he suggests that the mailing list could either be > subscribed to gmane.org or possibly moved to Google Groups or a > similar forum, where searching is possible. Has any of these options > been considered by the consortium, and discarded for some reason? Or > could it be beneficial to add a service like gmane to provide new > users with all the valuable help that already exists in the archive? > > Thanks for providing a useful code, and for the always helpful > contributions and answers from the developing team as well as the > experienced users. > > Best regards, > > Rune Slot Thing > > PhD Student > > Institute of Clinical Research, University of Southern Denmark > > Laboratory of Radiation Physics, Odense University Hospital > > rune.slot.thing at rsyd.dk > > *Fra:*Rtk-users [mailto:rtk-users-bounces at public.kitware.com] *P? > vegne af *Yang K Park > *Sendt:* 1. oktober 2015 00:00 > *Til:* 'Joel Beaudry' > *Cc:* rtk-users at public.kitware.com > *Emne:* Re: [Rtk-users] How to search for previous Q/A of RTK community? > > Hi Joel, > > Even though I?m a windows user, I managed to carry out your method > using Cygwin. > > My command was: > > wget -r -l1 --no-parent ?O rtkQA.txt > http://public.kitware.com/pipermail/rtk-users/ > > Thank you very much for your help! > > Yang > > *From:*Joel Beaudry [mailto:joelbeaudry at gmail.com] > *Sent:* Wednesday, September 30, 2015 5:19 PM > *To:* Yang K Park > > *Subject:* Re: [Rtk-users] How to search for previous Q/A of RTK > community? > > Hi Yang, > > "wget" can download all texts file from their respective month. > Something like this below should work. > > wget -r -l1 --no-parent -A.txt > http://public.kitware.com/pipermail/rtk-users/ > > > Cheers, > > Joel > > On Wed, Sep 30, 2015 at 1:59 PM, Yang K Park > wrote: > > Hi all, > > This could be a silly question but, I?m just wondering if there is > any way to download all the previous threads (as a text file) so > that I can search through it using some key words. > > What I have found so far is this one: > > http://public.kitware.com/pipermail/rtk-users/ > > However, to find something I have to open each text file one by one. > > I?m trying to find a better way so that I can avoid bothering > someone with questions that had been already answered before. > > Any suggestion would be highly appreciated. > > Thanks. > > Yang > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 9 05:49:20 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 9 Feb 2016 11:49:20 +0100 Subject: [Rtk-users] RTK training - June 22 2016 Message-ID: <56B9C430.80701@creatis.insa-lyon.fr> Dear RTK users, We will organize a new training session on June 22 2016 in Lyon. Follow the instructions on the webpage to register. The training is for both users and developers. We are happy to answer any question that you might have and we are looking forward to this new training session. Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From mgvallet.pro at gmail.com Tue Feb 9 09:39:04 2016 From: mgvallet.pro at gmail.com (MG Vallet) Date: Tue, 9 Feb 2016 09:39:04 -0500 Subject: [Rtk-users] Sophia beads reconstruction In-Reply-To: <56B4B268.1040307@creatis.insa-lyon.fr> References: <56B4B268.1040307@creatis.insa-lyon.fr> Message-ID: Hi Simon, thank you for your code. Unfortunately, I can not work on this any longer. I hope it will be useful for someone else. Cheers, MG 2016-02-05 9:32 GMT-05:00 Simon Rit : > Hi MG, > Sorry, I realized I said something stupid. Using tif or mha won't make any > difference because there is a branching on the pixel type in the > projectionsreader > > (search for ushort in the graph of the doxygen doc > ) and > unsigned short are handled differently. > The enclosed pyhon code will reproduce the same as my previous command > line application. The commented code in it is what I initially used to read > projections without any processing, i.e., assuming line integrals. > I still think there is a problem in the geometry but someone (you?) has to > spend sometime trying to understand what are the parameters from the Matlab > code. > Keep us posted and good luck, > Simon > > > On 28/01/2016 22:27, MG Vallet wrote: > > Louie, > I played with sdd and sid, following your advise. But they have few > effect, clearly less effect than proj_iso_x. And none of these parameters > can significantly improve my result. > > Simon, > I carefully checked every input data and I cant see what I did wrong. I > want first to reproduce your output. You said earlier it's easy to convert > a series of tiff image into a mha file using SimpleRTK. Do you mean by > writing a short program, or is it possible from the command line ? > > MG > > 2016-01-26 17:17 GMT-05:00 louie L : > >> Hi MG, >> >> >> >> Sometimes, the progressive deformation from the center of rotation to the >> edge of the image is caused by wrong sdd/sid ratio. Such as change in the >> geometry will lead to distortion of the image and wrong magnification. >> >> Maybe you can play with that parameter and report your result. >> >> >> >> Cheers, >> >> Louie >> >> >> >> Sent from Mail for >> Windows 10 >> >> >> >> >> *From: *Simon Rit >> *Sent: *Tuesday, January 26, 2016 13:24 >> *To: *MG Vallet >> *Cc: *rtk-users at public.kitware.com >> *Subject: *Re: [Rtk-users] Sophia beads reconstruction >> >> >> >> Hi, >> >> I think it's likely a problem with parameters. The best would be to >> obtain them from the Matlab code they provide. >> >> Good luck, >> >> Simon >> >> >> >> On Mon, Jan 25, 2016 at 5:48 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Hi Simon, >> >> >> >> this was a point I missed. I had to do the log mapping. >> >> >> >> I must say, I do not use RTK from shell. I just plugged the objects >> >> FDKConeBeamReconstructionFilter and ThreeDCircularProjectionGeometry from >> RTK into a visualisation software. That's the reason I'm not absolutely >> sure about the length parameter setting. >> >> >> >> Anyway, I'm now pretty close to your result. I believe the only >> difference is the progressive deformation of beads with the distance to >> center. >> >> >> >> What's your opinion : is there another step I might have missed, or is it >> more likely a problem with parameters ? >> >> >> >> MG >> >> >> >> 2016-01-21 14:22 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Not exactly. rtk::FDKConeBeamProjectionFilter assumes that you pass the >> line integral (ln(I0/I)). But rtkfdk uses the ProjectionsReader to read the >> projections and converts them depending on the type: for mha or mhd, it >> just reads it and nothing else. For tif, it assumes that I is passed, try >> to guess I0 (or gets it from the cmd line) and computes ln(I0/I). >> So from each tif projection, instead of letting them go through the >> ProjectionsReader in RTK, directly use the ImageReader, stack them and pass >> it to the reconstruction algorithm. In other words, if you use SimpleRTK, >> use ImageSeriesReader instead of ProjectionsReader. >> Regarding the geometry, it would be nice to be confident in the geometry >> parameters, maybe from their Matlab code? >> Simon >> >> >> >> On 21/01/2016 20:02, MG Vallet wrote: >> >> Hi Simon and Cyril, >> >> >> >> I really appreciate your insight. >> >> >> >> By examining the parameters of the acquisition, I saw that the center >> must effectively be offset (4.8 mm in both directions). For the attached >> image, I also increases sdd and sid by a factor 1000, just in case I would >> be wrong in units. It reduces the first default I pointed out in my first >> message. Also note that my input dataset was SophiaBeads_512_averaged. >> >> >> >> Regarding the pre-processing mentioned by Simon, I need more help. Is it >> as simple as the FDK filter assumes that the input is intensity, but the >> dataset provides -ln(I/I0) ? >> >> >> >> Regards, >> >> mg >> >> >> >> 2016-01-20 3:33 GMT-05:00 Simon Rit < >> simon.rit at creatis.insa-lyon.fr>: >> >> Hi, >> >> I quickly checked SophiaBeads_64_averaged.zip. First, it seems that what >> is provided is directly the line integral. RTK will process the tif images >> as if it were a photon count so I converted the tif projections to mha to >> avoid this. For the conversion, I used another piece of software but you >> can easily do the same thing with SimpleRTK. >> >> Second, I used the enclosed script which gives me a much better result. I >> have however a geometry problem. I think they provide a Matlab piece of >> code to get the center of rotation. If you can run it and find out what is >> this center, then you can use it to configure the geometry better with the >> options --proj_iso_x and --proj_iso_y. >> >> Good luck, >> >> Simon >> >> >> >> On Tue, Jan 19, 2016 at 8:02 PM, MG Vallet < >> mgvallet.pro at gmail.com> wrote: >> >> Thanks Cyril! >> >> going to carefully check my inputs and I give you some news. >> >> mgv >> >> >> >> 2016-01-19 10:33 GMT-05:00 Cyril Mory < >> cyril.mory at uclouvain.be>: >> >> Hi, >> >> It looks like the geometry is wrong indeed, because I have never seen >> such artifacts. >> >> Hope that helps, >> Cyril >> >> >> >> Le 19/01/2016 16:19, MG Vallet a ?crit : >> >> Dear rtk-users, >> >> >> >> I applied the FDKConeBeamReconstructionFilter to a data set from >> https://zenodo.org/record/16539. >> >> This is a plastic tube filled with glass beads that has been scanned. >> >> >> >> Attached is a view of the reconstructed central slice. It is found that: >> >> 1. the beads are quickly deformed outside the center >> 2. each one has a halo, or a shadow (dont know the proper term) >> >> My question is if these are simply expected artifacts. I am not 100% sure >> I properly set the geometry parameters. >> >> >> >> Regards, >> >> mgv >> >> >> >> _______________________________________________ >> >> Rtk-users mailing list >> >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> L'absence de virus dans ce courrier ?lectronique a ?t? v?rifi?e par le >> logiciel antivirus Avast. >> www.avast.com >> >> >> >> >> >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> >> >> >> >> >> >> >> >> >> >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Tue Feb 9 20:03:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Tue, 9 Feb 2016 20:03:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume Message-ID: Hello All, I have at hand a stack of projection images and the projection geometry defined in a .cal file of digisens. I am trying to use RTK to do the reconstruction. I used rtk::DigisensGeometryReader to read the .cal file and generate the geometry. Then i call rtk::FDKConeBeamReconstructionFilter to do the reconstruction by supplying to it as Inputs -- the geometry, a dummy reference image of the reconstructed volume (with origin, spacing, size, direction etc), and the stack of projection images. But i am getting a blank volume as reconstruction. I suspect the problem is with positioning the reconstructed volume (specified via the dummy reference image). As a sample attached is the digisens .cal file that RTK uses for testing purposes which looks very similar to mine. In lines 642-656, it seems to define the postion, size, and spacing of the reconstructed volume via the following schema: --------------------------------------------------------------------- 0 0 0.705858 0.708353
-1.23119 -16.6554 10.2144
0.2 0.2 0.2 289 399 360 true false false C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol 2 0 0 1 0
----------------------------------------------------------------------- I understand the (spacing in mm) and (size) elements. These can be used to SetSize() and SetSpacing() of the dummy reconstructed volume provided as input to the reconstruction filter. I dont know how to translate the and
to SetOrigin(), and SetDirection() of the dummy reconstructed volume. Does anyone know how to do this? Or alternatively, is there a way to automatically set these to reconstruct the maximum possible extent of the object positioned in between the source and detector? Regards, Deepak -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: calibration.cal Type: application/octet-stream Size: 49220 bytes Desc: not available URL: From g.landry at physik.uni-muenchen.de Wed Feb 10 04:57:37 2016 From: g.landry at physik.uni-muenchen.de (Guillaume Landry) Date: Wed, 10 Feb 2016 10:57:37 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles Message-ID: <56BB0991.1090208@physik.uni-muenchen.de> Dear rtk users, I am looking at Elekta CBCT data where the angle of the projections is more or less constant for the last ~7 projections (see attached pictures where abscissa is projection number and ordinate is the angle in degrees). This is for a short scan acquisition with the panel in the S position. I was wondering how this data is handled in the reconstruction. Are the projections weighted in rtk to account for the variable spacing? Thanks Guillaume -- Dr. Guillaume Landry Ludwig Maximilians University (LMU) Munich Medical Physics Am Coulombwall 1 85748 Garching Tel:+49 (0) 89 289-14077 Fax:+49 (0) 89 289-14072 -------------- next part -------------- A non-text attachment was scrubbed... Name: GantryAngles.png Type: image/png Size: 10968 bytes Desc: not available URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 05:08:03 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 11:08:03 +0100 Subject: [Rtk-users] rtk_fdk and redundant projections/angles In-Reply-To: <56BB0991.1090208@physik.uni-muenchen.de> References: <56BB0991.1090208@physik.uni-muenchen.de> Message-ID: Hi Guillaume, Yes they are. For FBP reconstructions, you have an integral over the source angle. When discretized, you have a delta angle between adjacent projections. This is done in the projection weighting of FDK. If you want to dig in the code, look for GetAngularGaps in rtkFDKWeightProjectionFilter.txx . For iterative reconstructions, we don't do anything specific and assume that it won't be a problem since the system of equations is correctly built. I hope this helps, Simon On Wed, Feb 10, 2016 at 10:57 AM, Guillaume Landry < g.landry at physik.uni-muenchen.de> wrote: > Dear rtk users, > > I am looking at Elekta CBCT data where the angle of the projections is > more or less constant for the last ~7 projections (see attached pictures > where abscissa is projection number and ordinate is the angle in > degrees). This is for a short scan acquisition with the panel in the S > position. I was wondering how this data is handled in the > reconstruction. Are the projections weighted in rtk to account for the > variable spacing? > > Thanks > > Guillaume > > -- > Dr. Guillaume Landry > Ludwig Maximilians University (LMU) Munich > Medical Physics > Am Coulombwall 1 > 85748 Garching > Tel:+49 (0) 89 289-14077 > Fax:+49 (0) 89 289-14072 > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://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 10 07:44:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 13:44:28 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: Message-ID: <56BB30AC.5090701@creatis.insa-lyon.fr> Hi, I haven't used the Digisens geometry reader so I hope that it works fine. Be careful with it because I don't think it's been thoroughly tested. Regarding the definition of the volume, in ITK, the origin is the coordinate of the first voxel. This is what allows you to place the volume at the right location. Using your grid parameters, I would say that you have to set the origin as (coordinate-by-coordinate) scale * 0.5 * (resolution-1) + center so that the center of the reconstructed volume is around the "center" parameter of your xml file. The direction would allow you to tilt your volume but since I don't understand the digisens parameter, I can't help you. I advise you to work on it later. I hope this helps. Good luck! Simon On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > Hello All, > > I have at hand a stack of projection images and the projection > geometry defined in a .cal file of digisens. I am trying to use RTK to > do the reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a > dummy reference image of the reconstructed volume (with origin, > spacing, size, direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for > testing purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of > the reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) > elements. These can be used to SetSize() and SetSpacing() of the dummy > reconstructed volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to > SetOrigin(), and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to > reconstruct the maximum possible extent of the object positioned in > between the source and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:32:12 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:32:12 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: <56BB30AC.5090701@creatis.insa-lyon.fr> References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Sorry for those multiple emails. I felt they were not going through to the mailing list as they were not showing up in the archives. Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * (resolution - 1)". I will try what you suggest and see. The four valued rotation parameter --- 0 0 0.705858 0.708353 --- in the .cal file is apparently a quaternion of unit length. Can i make an itk::Versor object from the four quaternion values. And then use its GetMatrix() as the direction as shown below: itk::Versor gridRot(0, 0, 0.705858, 0.708353); dummyReconImage->SetDirection( gridRot.GetMatrix() ); I tried this and it still dint seem to give the right reconstruction. Any suggestions? Should i be rotating the origin using this matrix before setting it using SetOrigin() maybe? On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit wrote: > Hi, > I haven't used the Digisens geometry reader so I hope that it works fine. > Be careful with it because I don't think it's been thoroughly tested. > Regarding the definition of the volume, in ITK, the origin is the > coordinate of the first voxel. This is what allows you to place the volume > at the right location. Using your grid parameters, I would say that you > have to set the origin as (coordinate-by-coordinate) > scale * 0.5 * (resolution-1) + center > so that the center of the reconstructed volume is around the "center" > parameter of your xml file. > The direction would allow you to tilt your volume but since I don't > understand the digisens parameter, I can't help you. I advise you to work > on it later. > I hope this helps. Good luck! > Simon > > > On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: > > Hello All, > > I have at hand a stack of projection images and the projection geometry > defined in a .cal file of digisens. I am trying to use RTK to do the > reconstruction. > > I used rtk::DigisensGeometryReader > to > read the .cal file and generate the geometry. > > Then i call rtk::FDKConeBeamReconstructionFilter > to > do the reconstruction by supplying to it as Inputs -- the geometry, a dummy > reference image of the reconstructed volume (with origin, spacing, size, > direction etc), and the stack of projection images. > > But i am getting a blank volume as reconstruction. > > I suspect the problem is with positioning the reconstructed volume > (specified via the dummy reference image). > > As a sample attached is the digisens .cal file that RTK uses for testing > purposes which looks very similar to mine. > > In lines 642-656, it seems to define the postion, size, and spacing of the > reconstructed volume via the following schema: > > --------------------------------------------------------------------- > > > 0 0 0.705858 0.708353 >
-1.23119 -16.6554 10.2144
> 0.2 0.2 0.2 > 289 399 360 > true > false > false > C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol > 2 > 0 > 0 > 1 0 > >
> > ----------------------------------------------------------------------- > > I understand the (spacing in mm) and (size) elements. > These can be used to SetSize() and SetSpacing() of the dummy reconstructed > volume provided as input to the reconstruction filter. > > I dont know how to translate the and
to SetOrigin(), > and SetDirection() of the dummy reconstructed volume. > > Does anyone know how to do this? > > Or alternatively, is there a way to automatically set these to reconstruct > the maximum possible extent of the object positioned in between the source > and detector? > > Regards, > > Deepak > > > _______________________________________________ > Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users > > > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From cdeepakroy at gmail.com Wed Feb 10 08:50:17 2016 From: cdeepakroy at gmail.com (Deepak Roy Chittajallu) Date: Wed, 10 Feb 2016 08:50:17 -0500 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: Alternatively, without using the grid parameters in the .cal file, once i know the following 9 geometric parameters that RTK needs for each projection: -- sourceToRotationCenterDistance -- sourceToDetectorDistance -- sourceOffsetX -- sourceOffsetY -- projectionOffsetX -- projectionOffsetY -- In-plane angle -- Out-of-plane angle -- gantryAngle Can i use the above to determine the size and orientation/direction of the reconstruction grid that enclosed the object? In my case, the object rotates instead of the source and detector? Would this be an issue affecting the geometric parameters in some way? Also when i peeked into the geometry object given by the digisens reader i see that the In-plane and out-of-plane angle change a bit for each projection probably because of this . Shouldnt these be constant? In my case the rotation axis is slightly off of the y-axis. I think RTK assumes it should be the y-axis. Maybe thats why the In-plane and Out-of-plane angles change? On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -- Deepak Roy Chittajallu, Ph.D. R&D Engineer, Medical Computing Team Kitware Inc , Carrboro, NC, USA E-mail: cdeepakroy at gmail.com URL: http://www.drchittajallu.info Linkedin: https://www.linkedin.com/in/cdeepakroy -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 08:54:44 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 14:54:44 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: That should work, if it does not I think it's a question for the ITK mailing list. For sure, you must account for the direction when you compute the origin. Again, don't bother with the image direction at first, keep it for later. On Wed, Feb 10, 2016 at 2:32 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Sorry for those multiple emails. I felt they were not going through to the > mailing list as they were not showing up in the archives. > > Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * > (resolution - 1)". I will try what you suggest and see. > > The four valued rotation parameter --- 0 0 0.705858 > 0.708353 --- in the .cal file is apparently a quaternion of > unit length. Can i make an itk::Versor object from the four quaternion > values. And then use its GetMatrix() as the direction as shown below: > > itk::Versor gridRot(0, 0, 0.705858, 0.708353); > dummyReconImage->SetDirection( gridRot.GetMatrix() ); > > I tried this and it still dint seem to give the right reconstruction. Any > suggestions? > > Should i be rotating the origin using this matrix before setting it using > SetOrigin() maybe? > > On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit > wrote: > >> Hi, >> I haven't used the Digisens geometry reader so I hope that it works fine. >> Be careful with it because I don't think it's been thoroughly tested. >> Regarding the definition of the volume, in ITK, the origin is the >> coordinate of the first voxel. This is what allows you to place the volume >> at the right location. Using your grid parameters, I would say that you >> have to set the origin as (coordinate-by-coordinate) >> scale * 0.5 * (resolution-1) + center >> so that the center of the reconstructed volume is around the "center" >> parameter of your xml file. >> The direction would allow you to tilt your volume but since I don't >> understand the digisens parameter, I can't help you. I advise you to work >> on it later. >> I hope this helps. Good luck! >> Simon >> >> >> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >> >> Hello All, >> >> I have at hand a stack of projection images and the projection geometry >> defined in a .cal file of digisens. I am trying to use RTK to do the >> reconstruction. >> >> I used rtk::DigisensGeometryReader >> to >> read the .cal file and generate the geometry. >> >> Then i call rtk::FDKConeBeamReconstructionFilter >> to >> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >> reference image of the reconstructed volume (with origin, spacing, size, >> direction etc), and the stack of projection images. >> >> But i am getting a blank volume as reconstruction. >> >> I suspect the problem is with positioning the reconstructed volume >> (specified via the dummy reference image). >> >> As a sample attached is the digisens .cal file that RTK uses for testing >> purposes which looks very similar to mine. >> >> In lines 642-656, it seems to define the postion, size, and spacing of >> the reconstructed volume via the following schema: >> >> --------------------------------------------------------------------- >> >> >> 0 0 0.705858 0.708353 >>
-1.23119 -16.6554 10.2144
>> 0.2 0.2 0.2 >> 289 399 360 >> true >> false >> false >> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >> 2 >> 0 >> 0 >> 1 0 >> >>
>> >> ----------------------------------------------------------------------- >> >> I understand the (spacing in mm) and (size) >> elements. These can be used to SetSize() and SetSpacing() of the dummy >> reconstructed volume provided as input to the reconstruction filter. >> >> I dont know how to translate the and
to SetOrigin(), >> and SetDirection() of the dummy reconstructed volume. >> >> Does anyone know how to do this? >> >> Or alternatively, is there a way to automatically set these to >> reconstruct the maximum possible extent of the object positioned in between >> the source and detector? >> >> Regards, >> >> Deepak >> >> >> _______________________________________________ >> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >> >> >> > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 10 09:02:41 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 10 Feb 2016 15:02:41 +0100 Subject: [Rtk-users] How to determine the position and size of reconstructed volume In-Reply-To: References: <56BB30AC.5090701@creatis.insa-lyon.fr> Message-ID: On Wed, Feb 10, 2016 at 2:50 PM, Deepak Roy Chittajallu < cdeepakroy at gmail.com> wrote: > Alternatively, without using the grid parameters in the .cal file, once i > know the following 9 geometric parameters that RTK needs for each > projection: > > -- sourceToRotationCenterDistance > -- sourceToDetectorDistance > -- sourceOffsetX > -- sourceOffsetY > -- projectionOffsetX > -- projectionOffsetY > -- In-plane angle > -- Out-of-plane angle > -- gantryAngle > > Can i use the above to determine the size and orientation/direction of the > reconstruction grid that enclosed the object? > No, that says nothing on where you've place your object. > > In my case, the object rotates instead of the source and detector? Would > this be an issue affecting the geometric parameters in some way? > I think there is a confusion. The fact that the object is still or the source/detector is still doesn't change anything in the reference frame of the object. I think it's simpler to account for the grid rotation in the direction. Don't try to account for it in the projection parameters even if it's of course possible to do so. > > Also when i peeked into the geometry object given by the digisens reader i > see that the In-plane and out-of-plane angle change a bit for each > projection probably because of this > . > Shouldnt these be constant? In my case the rotation axis is slightly off of > the y-axis. I think RTK assumes it should be the y-axis. > InPlane and Out-of-plane are not 0 because your rotation axis is not (0,1,0), that's expected. I guess they should be constant if your rotation axis is, if not there might be a problem in the conversion from axis-angle to euler angles. You'd have to check... Good luck, Simon > Maybe thats why the In-plane and Out-of-plane angles change? > > On Wed, Feb 10, 2016 at 8:32 AM, Deepak Roy Chittajallu < > cdeepakroy at gmail.com> wrote: > >> Sorry for those multiple emails. I felt they were not going through to >> the mailing list as they were not showing up in the archives. >> >> Simon, thanks a lot for the reply. I tried "center - 0.5 * scale * >> (resolution - 1)". I will try what you suggest and see. >> >> The four valued rotation parameter --- 0 0 0.705858 >> 0.708353 --- in the .cal file is apparently a quaternion of >> unit length. Can i make an itk::Versor object from the four quaternion >> values. And then use its GetMatrix() as the direction as shown below: >> >> itk::Versor gridRot(0, 0, 0.705858, 0.708353); >> dummyReconImage->SetDirection( gridRot.GetMatrix() ); >> >> I tried this and it still dint seem to give the right reconstruction. Any >> suggestions? >> >> Should i be rotating the origin using this matrix before setting it using >> SetOrigin() maybe? >> >> On Wed, Feb 10, 2016 at 7:44 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi, >>> I haven't used the Digisens geometry reader so I hope that it works >>> fine. Be careful with it because I don't think it's been thoroughly tested. >>> Regarding the definition of the volume, in ITK, the origin is the >>> coordinate of the first voxel. This is what allows you to place the volume >>> at the right location. Using your grid parameters, I would say that you >>> have to set the origin as (coordinate-by-coordinate) >>> scale * 0.5 * (resolution-1) + center >>> so that the center of the reconstructed volume is around the "center" >>> parameter of your xml file. >>> The direction would allow you to tilt your volume but since I don't >>> understand the digisens parameter, I can't help you. I advise you to work >>> on it later. >>> I hope this helps. Good luck! >>> Simon >>> >>> >>> On 10/02/2016 02:03, Deepak Roy Chittajallu wrote: >>> >>> Hello All, >>> >>> I have at hand a stack of projection images and the projection geometry >>> defined in a .cal file of digisens. I am trying to use RTK to do the >>> reconstruction. >>> >>> I used rtk::DigisensGeometryReader >>> to >>> read the .cal file and generate the geometry. >>> >>> Then i call rtk::FDKConeBeamReconstructionFilter >>> to >>> do the reconstruction by supplying to it as Inputs -- the geometry, a dummy >>> reference image of the reconstructed volume (with origin, spacing, size, >>> direction etc), and the stack of projection images. >>> >>> But i am getting a blank volume as reconstruction. >>> >>> I suspect the problem is with positioning the reconstructed volume >>> (specified via the dummy reference image). >>> >>> As a sample attached is the digisens .cal file that RTK uses for testing >>> purposes which looks very similar to mine. >>> >>> In lines 642-656, it seems to define the postion, size, and spacing of >>> the reconstructed volume via the following schema: >>> >>> --------------------------------------------------------------------- >>> >>> >>> 0 0 0.705858 0.708353 >>>
-1.23119 -16.6554 10.2144
>>> 0.2 0.2 0.2 >>> 289 399 360 >>> true >>> false >>> false >>> >>> C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol >>> 2 >>> 0 >>> 0 >>> 1 0 >>> >>>
>>> >>> ----------------------------------------------------------------------- >>> >>> I understand the (spacing in mm) and (size) >>> elements. These can be used to SetSize() and SetSpacing() of the dummy >>> reconstructed volume provided as input to the reconstruction filter. >>> >>> I dont know how to translate the and
to SetOrigin(), >>> and SetDirection() of the dummy reconstructed volume. >>> >>> Does anyone know how to do this? >>> >>> Or alternatively, is there a way to automatically set these to >>> reconstruct the maximum possible extent of the object positioned in between >>> the source and detector? >>> >>> Regards, >>> >>> Deepak >>> >>> >>> _______________________________________________ >>> Rtk-users mailing listRtk-users at public.kitware.comhttp://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >>> >> >> >> -- >> Deepak Roy Chittajallu, Ph.D. >> R&D Engineer, Medical Computing Team >> Kitware Inc , Carrboro, NC, USA >> E-mail: cdeepakroy at gmail.com >> URL: http://www.drchittajallu.info >> Linkedin: https://www.linkedin.com/in/cdeepakroy >> > > > > -- > Deepak Roy Chittajallu, Ph.D. > R&D Engineer, Medical Computing Team > Kitware Inc , Carrboro, NC, USA > E-mail: cdeepakroy at gmail.com > URL: http://www.drchittajallu.info > Linkedin: https://www.linkedin.com/in/cdeepakroy > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Mon Feb 15 08:06:54 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Mon, 15 Feb 2016 14:06:54 +0100 Subject: [Rtk-users] Release of RTK v1.2.0 Message-ID: <56C1CD6E.90907@creatis.insa-lyon.fr> Dear RTK users, RTK v1.2.0 has just been released, about 7.5 months after RTK v1.1.0. This release will be the minimal version for the implementation of the fixed forced detection in the upcoming Gate v7.2. Release notes : - CMake option "RTK_TIME_EACH_FILTER" to separately time each RTK filter in an application - Various improvements on projection weighting with offset detectors - Added 4D Ordered Subsets SART application - New python wrappings for SimpleRTK - Added "--weights" option in rtkconjugategradient to allow weighted least squares optimization, with either standard or preconditioned conjugate gradient (using the "--preconditioned" flag) - New "--like" option in many applications, to read the output dimension, spacing and origin from an existing image - Added Iterative FDK application - Added "--idvf" option in rtkfourdrooster, to use inverse-consistent DVFs (one with "--dvf", the other with "--idvf") to speed up inverse warping - Added "--clipbox" option to rtkamsterdamshroud to crop the shroud based on a 3D clipbox - Added rtkoverlayphaseandshroud, which creates an image on which it is easy to evaluate the quality of the phase estimation - Added optional laplacian regularization to 3D conjugate gradient reconstruction - Many bug fixes Many thanks to the increasing number of contributors, in alphabetical order for this release: Cyril Mory, David Sarrut, Deepak Roy Chittajallu, Julien Jomier, Mathieu Dupont, Rholais Lii, S?bastien Brousmiche, Simon Rit. We don't focus on releases since we have a public github repository that we try to keep stable, I still recommend the use of the master HEAD over releases to enjoy the new RTK developments before their release. We still have a few on-going projects for which we will use and enhance RTK. Simon (for the RTK consortium) -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 14:52:19 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Fri, 19 Feb 2016 22:52:19 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Guangming Zang Date: Fri, Feb 19, 2016 at 10:49 PM Subject: About the newspacing flag To: rtk-users-request at public.kitware.com, Chao Wu , Simon Rit , "rtk-users at public.kitware.com" < rtk-users at public.kitware.com>, rtk-users at openrtk.org Dear RTK community, i have a question about the parameter "newspacing " in rtkFDK and rtkSART algorithm. it says:--newspacing new spacing of input projections (before pre-processing). I checked in the code, and it seems not easy to find the correct part in the code about the newspacing . So could anyone help me and explain about this parameter?? i want to simulate this preprocess step in my own project and compare to our RTK. -best regards Guangming -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 19 17:15:12 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 19 Feb 2016 23:15:12 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, The parameter is processed in rtkGgoFunctions .h. It's passed to an itk::ChangeInformationFilter at the beginning of the rtk::ProjectionsReader.h . But in the end, there is nothing to explain, it's simply changes the spacing of the input projections. I hope this helps, Simon On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang wrote: > > ---------- Forwarded message ---------- > From: Guangming Zang > Date: Fri, Feb 19, 2016 at 10:49 PM > Subject: About the newspacing flag > To: rtk-users-request at public.kitware.com, Chao Wu , > Simon Rit , "rtk-users at public.kitware.com" > , rtk-users at openrtk.org > > > Dear RTK community, > i have a question about the parameter "newspacing " in rtkFDK and rtkSART > algorithm. > it says:--newspacing new spacing of input projections (before > pre-processing). > I checked in the code, and it seems not easy to find the correct part in > the code about the newspacing . > So could anyone help me and explain about this parameter?? i want to > simulate this preprocess step in my own project and compare to our RTK. > -best regards Guangming > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Fri Feb 19 17:50:46 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 01:50:46 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Simon, Thanks for your kind reply and information provided. Basically the problem i encountered is that without changing any geometry (i.e., sid, sdd, detector physical size), if i downsample my original projection images, how can i reconstruct corresponding volume correctly. In RTK, it seems that i just need to change the input projection file and newspacing parameter (as same as the factor of downsample), then i got promising results. but in my own application, i simulate the situation, but got some aliasing. So i really want to know how it work behind our RTK. I thought that this parameter is to simulate the detector's spacing size. And in my experiment, i set the detector physical size as 256mm*256mm, and i got projection images P1.mha with size of 256^2 , now i downsample these images with factor of 2( i.e., the images size change from 256^2 to 128^2 ), from which i got P2.mha in our rtkfdk, after the dowmsample. i just need change input projections from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. both of the results from RTK are pretty good. my questions are: 1) can i just regard the newspacing as the upsample operation with nearest neighbor filter?? 2) how many rays RTK generated in forward projecion (i.e. ray tracing part ) for each image in P2.mha??? is it 256^2???? To sum up,in my own application, can i reproduce the result from RTK for flag "newspacing as 2" by doing: upsample image by factor of 2 (got a 256mm*256mm image ) and just generate half number of rays in raytracing (forward priject ) part??? Thanks for your time and help in advance, -Regards Guangming On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit wrote: > Hi Guangming, > The parameter is processed in rtkGgoFunctions > .h. > It's passed to an itk::ChangeInformationFilter > > at the beginning of the rtk::ProjectionsReader.h > . But > in the end, there is nothing to explain, it's simply changes the spacing of > the input projections. > I hope this helps, > Simon > > On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < > guangming.zang at kaust.edu.sa> wrote: > >> >> ---------- Forwarded message ---------- >> From: Guangming Zang >> Date: Fri, Feb 19, 2016 at 10:49 PM >> Subject: About the newspacing flag >> To: rtk-users-request at public.kitware.com, Chao Wu , >> Simon Rit , "rtk-users at public.kitware.com" >> , rtk-users at openrtk.org >> >> >> Dear RTK community, >> i have a question about the parameter "newspacing " in rtkFDK and rtkSART >> algorithm. >> it says:--newspacing new spacing of input projections (before >> pre-processing). >> I checked in the code, and it seems not easy to find the correct part >> in the code about the newspacing . >> So could anyone help me and explain about this parameter?? i want to >> simulate this preprocess step in my own project and compare to our RTK. >> -best regards Guangming >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:17:00 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:17:00 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, There is no upsampling at all. It simply overwrites the pixel size of the projection images stored in the image files. If for instance when you downsampled your P1 to P2 with a factor 2, you also changed the pixel size from 1 to 2 already, then you do not even need to use the newspacing flag. Regards, Chao 2016-02-19 23:50 GMT+01:00 Guangming Zang : > Hi Simon, > Thanks for your kind reply and information provided. > Basically the problem i encountered is that without changing any geometry > (i.e., sid, sdd, detector physical size), if i downsample my original > projection images, how can i reconstruct corresponding volume correctly. > In RTK, it seems that i just need to change the input projection file and > newspacing parameter (as same as the factor of downsample), then i got > promising results. but in my own application, i simulate the situation, but > got some aliasing. So i really want to know how it work behind our RTK. > I thought that this parameter is to simulate the detector's spacing size. > And in my experiment, i set the detector physical size as 256mm*256mm, and > i got projection images P1.mha with size of 256^2 , now i downsample these > images with factor of 2( i.e., the images size change from 256^2 to 128^2 > ), from which i got P2.mha > in our rtkfdk, after the dowmsample. i just need change input projections > from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. > both of the results from RTK are pretty good. > my questions are: > 1) can i just regard the newspacing as the upsample operation with nearest > neighbor filter?? > 2) how many rays RTK generated in forward projecion (i.e. ray tracing part > ) for each image in P2.mha??? is it 256^2???? > > To sum up,in my own application, can i reproduce the result from RTK for > flag "newspacing as 2" by doing: > upsample image by factor of 2 (got a 256mm*256mm image ) and just generate > half number of rays in raytracing (forward priject ) part??? > > Thanks for your time and help in advance, > -Regards Guangming > > > > On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit > wrote: > >> Hi Guangming, >> The parameter is processed in rtkGgoFunctions >> .h. >> It's passed to an itk::ChangeInformationFilter >> >> at the beginning of the rtk::ProjectionsReader.h >> . But >> in the end, there is nothing to explain, it's simply changes the spacing of >> the input projections. >> I hope this helps, >> Simon >> >> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >> guangming.zang at kaust.edu.sa> wrote: >> >>> >>> ---------- Forwarded message ---------- >>> From: Guangming Zang >>> Date: Fri, Feb 19, 2016 at 10:49 PM >>> Subject: About the newspacing flag >>> To: rtk-users-request at public.kitware.com, Chao Wu , >>> Simon Rit , " >>> rtk-users at public.kitware.com" , >>> rtk-users at openrtk.org >>> >>> >>> Dear RTK community, >>> i have a question about the parameter "newspacing " in rtkFDK and >>> rtkSART algorithm. >>> it says:--newspacing new spacing of input projections (before >>> pre-processing). >>> I checked in the code, and it seems not easy to find the correct part >>> in the code about the newspacing . >>> So could anyone help me and explain about this parameter?? i want to >>> simulate this preprocess step in my own project and compare to our RTK. >>> -best regards Guangming >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > http://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:28:02 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:28:02 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao, Thanks very much for your kind help. i see, now i know there is no upsampling at all. But i am still a little confused about "then you do not even need to use the newspacing flag" . Since if i want to use same geometry(sid, sdd, fixed detector size) after dowmsampling (from P1 to P2). The size of each projection image changes from 256^2 to 128^2. so to maintain the same detector size, the spacing must be 2, i.e, the newspacing should set to 2. Is that correct??? Actually, the question i have now is that , if before the downsample, each image size is 256^2. and in forward projecting part in SART alglrothm, say the number of ray generated is 256^2. Then after downsampling,i.e., when using P2 as input for rtkSART, what is the number of ray generated in forward projections part?? is it 128^2 since the number of pixel is 128^2 ??? Thanks very much! Regards Guangming On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > Hi Guangming, > > There is no upsampling at all. It simply overwrites the pixel size of the > projection images stored in the image files. If for instance when you > downsampled your P1 to P2 with a factor 2, you also changed the pixel size > from 1 to 2 already, then you do not even need to use the newspacing flag. > > Regards, > Chao > > > 2016-02-19 23:50 GMT+01:00 Guangming Zang : > >> Hi Simon, >> Thanks for your kind reply and information provided. >> Basically the problem i encountered is that without changing any geometry >> (i.e., sid, sdd, detector physical size), if i downsample my original >> projection images, how can i reconstruct corresponding volume correctly. >> In RTK, it seems that i just need to change the input projection file >> and newspacing parameter (as same as the factor of downsample), then i got >> promising results. but in my own application, i simulate the situation, but >> got some aliasing. So i really want to know how it work behind our RTK. >> I thought that this parameter is to simulate the detector's spacing size. >> And in my experiment, i set the detector physical size as 256mm*256mm, >> and i got projection images P1.mha with size of 256^2 , now i downsample >> these images with factor of 2( i.e., the images size change from 256^2 to >> 128^2 ), from which i got P2.mha >> in our rtkfdk, after the dowmsample. i just need change input projections >> from P1.mha to P2.mha, besides, i need change flag newspacing from 1 to 2. >> both of the results from RTK are pretty good. >> my questions are: >> 1) can i just regard the newspacing as the upsample operation with >> nearest neighbor filter?? >> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >> part ) for each image in P2.mha??? is it 256^2???? >> >> To sum up,in my own application, can i reproduce the result from RTK for >> flag "newspacing as 2" by doing: >> upsample image by factor of 2 (got a 256mm*256mm image ) and just >> generate half number of rays in raytracing (forward priject ) part??? >> >> Thanks for your time and help in advance, >> -Regards Guangming >> >> >> >> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >> simon.rit at creatis.insa-lyon.fr> wrote: >> >>> Hi Guangming, >>> The parameter is processed in rtkGgoFunctions >>> .h. >>> It's passed to an itk::ChangeInformationFilter >>> >>> at the beginning of the rtk::ProjectionsReader.h >>> . >>> But in the end, there is nothing to explain, it's simply changes the >>> spacing of the input projections. >>> I hope this helps, >>> Simon >>> >>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>> guangming.zang at kaust.edu.sa> wrote: >>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: Guangming Zang >>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>> Subject: About the newspacing flag >>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>> Simon Rit , " >>>> rtk-users at public.kitware.com" , >>>> rtk-users at openrtk.org >>>> >>>> >>>> Dear RTK community, >>>> i have a question about the parameter "newspacing " in rtkFDK and >>>> rtkSART algorithm. >>>> it says:--newspacing new spacing of input projections (before >>>> pre-processing). >>>> I checked in the code, and it seems not easy to find the correct part >>>> in the code about the newspacing . >>>> So could anyone help me and explain about this parameter?? i want to >>>> simulate this preprocess step in my own project and compare to our RTK. >>>> -best regards Guangming >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> http://public.kitware.com/mailman/listinfo/rtk-users >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Sat Feb 20 08:50:03 2016 From: wuchao04 at gmail.com (Chao Wu) Date: Sat, 20 Feb 2016 14:50:03 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Guangming, In many image file format the pixel size (spacing) can be stored within the file data. If the pixel size in the projection files are correct (e.g. spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you can use them without giving the newspacing flag. The newspacing flag just gives you a chance to force RTK to use the pixel size you specified instead of the one that stored in the image files. I am not into rtkSART but I guess the forward projection works with the input grid, so 128x128 if the input projections are 128x128. Please correct me if I am wrong. Regards, Chao 2016-02-20 14:28 GMT+01:00 Guangming Zang : > Hi Chao, > Thanks very much for your kind help. i see, now i know there is no > upsampling at all. > But i am still a little confused about "then you do not even need to use > the newspacing flag" . Since if i want to use same geometry(sid, sdd, > fixed detector size) after dowmsampling (from P1 to P2). > The size of each projection image changes from 256^2 to 128^2. so to > maintain the same detector size, the spacing must be 2, i.e, the newspacing > should set to 2. Is that correct??? > Actually, the question i have now is that , if before the downsample, each > image size is 256^2. and in forward projecting part in SART alglrothm, say > the number of ray generated is 256^2. > Then after downsampling,i.e., when using P2 as input for rtkSART, what is > the number of ray generated in forward projections part?? is it 128^2 since > the number of pixel is 128^2 ??? > Thanks very much! > Regards Guangming > > On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: > >> Hi Guangming, >> >> There is no upsampling at all. It simply overwrites the pixel size of the >> projection images stored in the image files. If for instance when you >> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >> from 1 to 2 already, then you do not even need to use the newspacing flag. >> >> Regards, >> Chao >> >> >> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >> >>> Hi Simon, >>> Thanks for your kind reply and information provided. >>> Basically the problem i encountered is that without changing any >>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>> original projection images, how can i reconstruct corresponding volume >>> correctly. >>> In RTK, it seems that i just need to change the input projection file >>> and newspacing parameter (as same as the factor of downsample), then i got >>> promising results. but in my own application, i simulate the situation, but >>> got some aliasing. So i really want to know how it work behind our RTK. >>> I thought that this parameter is to simulate the detector's spacing size. >>> And in my experiment, i set the detector physical size as 256mm*256mm, >>> and i got projection images P1.mha with size of 256^2 , now i downsample >>> these images with factor of 2( i.e., the images size change from 256^2 to >>> 128^2 ), from which i got P2.mha >>> in our rtkfdk, after the dowmsample. i just need change input >>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>> from 1 to 2. both of the results from RTK are pretty good. >>> my questions are: >>> 1) can i just regard the newspacing as the upsample operation with >>> nearest neighbor filter?? >>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>> part ) for each image in P2.mha??? is it 256^2???? >>> >>> To sum up,in my own application, can i reproduce the result from RTK for >>> flag "newspacing as 2" by doing: >>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>> generate half number of rays in raytracing (forward priject ) part??? >>> >>> Thanks for your time and help in advance, >>> -Regards Guangming >>> >>> >>> >>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>> simon.rit at creatis.insa-lyon.fr> wrote: >>> >>>> Hi Guangming, >>>> The parameter is processed in rtkGgoFunctions >>>> .h. >>>> It's passed to an itk::ChangeInformationFilter >>>> >>>> at the beginning of the rtk::ProjectionsReader.h >>>> . >>>> But in the end, there is nothing to explain, it's simply changes the >>>> spacing of the input projections. >>>> I hope this helps, >>>> Simon >>>> >>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>> guangming.zang at kaust.edu.sa> wrote: >>>> >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Guangming Zang >>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>> Subject: About the newspacing flag >>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>> Simon Rit , " >>>>> rtk-users at public.kitware.com" , >>>>> rtk-users at openrtk.org >>>>> >>>>> >>>>> Dear RTK community, >>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>> rtkSART algorithm. >>>>> it says:--newspacing new spacing of input projections (before >>>>> pre-processing). >>>>> I checked in the code, and it seems not easy to find the correct >>>>> part in the code about the newspacing . >>>>> So could anyone help me and explain about this parameter?? i want to >>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>> -best regards Guangming >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> http://public.kitware.com/mailman/listinfo/rtk-users >>> >>> >> > > > -- > *Guangming Zang (Alex)* > *King Abdullah University of Science and Technology(KAUST)* > *University of Chinese Academy of Sciences(UCAS)* > > > > > ------------------------------ > This message and its contents, including attachments are intended solely > for the original recipient. If you are not the intended recipient or have > received this message in error, please notify me immediately and delete > this message from your computer system. Any unauthorized use or > distribution is prohibited. Please consider the environment before printing > this email. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Sat Feb 20 08:53:28 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Sat, 20 Feb 2016 14:53:28 +0100 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi, Yes, that's correct, we simulate one ray per pixel. Simon On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > Hi Guangming, > > In many image file format the pixel size (spacing) can be stored within > the file data. If the pixel size in the projection files are correct (e.g. > spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you > can use them without giving the newspacing flag. The newspacing flag just > gives you a chance to force RTK to use the pixel size you specified instead > of the one that stored in the image files. > > I am not into rtkSART but I guess the forward projection works with the > input grid, so 128x128 if the input projections are 128x128. Please correct > me if I am wrong. > > Regards, > Chao > > 2016-02-20 14:28 GMT+01:00 Guangming Zang : > >> Hi Chao, >> Thanks very much for your kind help. i see, now i know there is no >> upsampling at all. >> But i am still a little confused about "then you do not even need to use >> the newspacing flag" . Since if i want to use same geometry(sid, sdd, >> fixed detector size) after dowmsampling (from P1 to P2). >> The size of each projection image changes from 256^2 to 128^2. so to >> maintain the same detector size, the spacing must be 2, i.e, the newspacing >> should set to 2. Is that correct??? >> Actually, the question i have now is that , if before the downsample, >> each image size is 256^2. and in forward projecting part in SART alglrothm, >> say the number of ray generated is 256^2. >> Then after downsampling,i.e., when using P2 as input for rtkSART, what is >> the number of ray generated in forward projections part?? is it 128^2 since >> the number of pixel is 128^2 ??? >> Thanks very much! >> Regards Guangming >> >> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >> >>> Hi Guangming, >>> >>> There is no upsampling at all. It simply overwrites the pixel size of >>> the projection images stored in the image files. If for instance when you >>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>> >>> Regards, >>> Chao >>> >>> >>> 2016-02-19 23:50 GMT+01:00 Guangming Zang : >>> >>>> Hi Simon, >>>> Thanks for your kind reply and information provided. >>>> Basically the problem i encountered is that without changing any >>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>> original projection images, how can i reconstruct corresponding volume >>>> correctly. >>>> In RTK, it seems that i just need to change the input projection file >>>> and newspacing parameter (as same as the factor of downsample), then i got >>>> promising results. but in my own application, i simulate the situation, but >>>> got some aliasing. So i really want to know how it work behind our RTK. >>>> I thought that this parameter is to simulate the detector's spacing >>>> size. >>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>> 128^2 ), from which i got P2.mha >>>> in our rtkfdk, after the dowmsample. i just need change input >>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>> from 1 to 2. both of the results from RTK are pretty good. >>>> my questions are: >>>> 1) can i just regard the newspacing as the upsample operation with >>>> nearest neighbor filter?? >>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>> part ) for each image in P2.mha??? is it 256^2???? >>>> >>>> To sum up,in my own application, can i reproduce the result from RTK >>>> for flag "newspacing as 2" by doing: >>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>> generate half number of rays in raytracing (forward priject ) part??? >>>> >>>> Thanks for your time and help in advance, >>>> -Regards Guangming >>>> >>>> >>>> >>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>> >>>>> Hi Guangming, >>>>> The parameter is processed in rtkGgoFunctions >>>>> .h. >>>>> It's passed to an itk::ChangeInformationFilter >>>>> >>>>> at the beginning of the rtk::ProjectionsReader.h >>>>> . >>>>> But in the end, there is nothing to explain, it's simply changes the >>>>> spacing of the input projections. >>>>> I hope this helps, >>>>> Simon >>>>> >>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>> guangming.zang at kaust.edu.sa> wrote: >>>>> >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Guangming Zang >>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>> Subject: About the newspacing flag >>>>>> To: rtk-users-request at public.kitware.com, Chao Wu , >>>>>> Simon Rit , " >>>>>> rtk-users at public.kitware.com" , >>>>>> rtk-users at openrtk.org >>>>>> >>>>>> >>>>>> Dear RTK community, >>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>> rtkSART algorithm. >>>>>> it says:--newspacing new spacing of input projections (before >>>>>> pre-processing). >>>>>> I checked in the code, and it seems not easy to find the correct >>>>>> part in the code about the newspacing . >>>>>> So could anyone help me and explain about this parameter?? i want to >>>>>> simulate this preprocess step in my own project and compare to our RTK. >>>>>> -best regards Guangming >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Guangming Zang (Alex)* >>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> This message and its contents, including attachments are intended >>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>> have received this message in error, please notify me immediately and >>>>>> delete this message from your computer system. Any unauthorized use or >>>>>> distribution is prohibited. Please consider the environment before printing >>>>>> this email. >>>>>> >>>>>> _______________________________________________ >>>>>> Rtk-users mailing list >>>>>> Rtk-users at public.kitware.com >>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Guangming Zang (Alex)* >>>> *King Abdullah University of Science and Technology(KAUST)* >>>> *University of Chinese Academy of Sciences(UCAS)* >>>> >>>> >>>> >>>> >>>> ------------------------------ >>>> This message and its contents, including attachments are intended >>>> solely for the original recipient. If you are not the intended recipient or >>>> have received this message in error, please notify me immediately and >>>> delete this message from your computer system. Any unauthorized use or >>>> distribution is prohibited. Please consider the environment before printing >>>> this email. >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> >>> >> >> >> -- >> *Guangming Zang (Alex)* >> *King Abdullah University of Science and Technology(KAUST)* >> *University of Chinese Academy of Sciences(UCAS)* >> >> >> >> >> ------------------------------ >> This message and its contents, including attachments are intended solely >> for the original recipient. If you are not the intended recipient or have >> received this message in error, please notify me immediately and delete >> this message from your computer system. Any unauthorized use or >> distribution is prohibited. Please consider the environment before printing >> this email. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guangming.zang at kaust.edu.sa Sat Feb 20 08:58:53 2016 From: guangming.zang at kaust.edu.sa (Guangming Zang) Date: Sat, 20 Feb 2016 16:58:53 +0300 Subject: [Rtk-users] Fwd: About the newspacing flag In-Reply-To: References: Message-ID: Hi Chao and Simon, Thanks so much for the kind help. Now i got it after you guys detailed explanation. Have a good weekend! -Best regards Guangming On Sat, Feb 20, 2016 at 4:53 PM, Simon Rit wrote: > Hi, > Yes, that's correct, we simulate one ray per pixel. > Simon > > On Sat, Feb 20, 2016 at 2:50 PM, Chao Wu wrote: > >> Hi Guangming, >> >> In many image file format the pixel size (spacing) can be stored within >> the file data. If the pixel size in the projection files are correct (e.g. >> spacing=1 in your 256x256 P1, or spacing=2 in your 128x128 P2), then you >> can use them without giving the newspacing flag. The newspacing flag just >> gives you a chance to force RTK to use the pixel size you specified instead >> of the one that stored in the image files. >> >> I am not into rtkSART but I guess the forward projection works with the >> input grid, so 128x128 if the input projections are 128x128. Please correct >> me if I am wrong. >> >> Regards, >> Chao >> >> 2016-02-20 14:28 GMT+01:00 Guangming Zang : >> >>> Hi Chao, >>> Thanks very much for your kind help. i see, now i know there is no >>> upsampling at all. >>> But i am still a little confused about "then you do not even need to >>> use the newspacing flag" . Since if i want to use same geometry(sid, >>> sdd, fixed detector size) after dowmsampling (from P1 to P2). >>> The size of each projection image changes from 256^2 to 128^2. so to >>> maintain the same detector size, the spacing must be 2, i.e, the newspacing >>> should set to 2. Is that correct??? >>> Actually, the question i have now is that , if before the downsample, >>> each image size is 256^2. and in forward projecting part in SART alglrothm, >>> say the number of ray generated is 256^2. >>> Then after downsampling,i.e., when using P2 as input for rtkSART, what >>> is the number of ray generated in forward projections part?? is it 128^2 >>> since the number of pixel is 128^2 ??? >>> Thanks very much! >>> Regards Guangming >>> >>> On Sat, Feb 20, 2016 at 4:17 PM, Chao Wu wrote: >>> >>>> Hi Guangming, >>>> >>>> There is no upsampling at all. It simply overwrites the pixel size of >>>> the projection images stored in the image files. If for instance when you >>>> downsampled your P1 to P2 with a factor 2, you also changed the pixel size >>>> from 1 to 2 already, then you do not even need to use the newspacing flag. >>>> >>>> Regards, >>>> Chao >>>> >>>> >>>> 2016-02-19 23:50 GMT+01:00 Guangming Zang >>>> : >>>> >>>>> Hi Simon, >>>>> Thanks for your kind reply and information provided. >>>>> Basically the problem i encountered is that without changing any >>>>> geometry (i.e., sid, sdd, detector physical size), if i downsample my >>>>> original projection images, how can i reconstruct corresponding volume >>>>> correctly. >>>>> In RTK, it seems that i just need to change the input projection file >>>>> and newspacing parameter (as same as the factor of downsample), then i got >>>>> promising results. but in my own application, i simulate the situation, but >>>>> got some aliasing. So i really want to know how it work behind our RTK. >>>>> I thought that this parameter is to simulate the detector's spacing >>>>> size. >>>>> And in my experiment, i set the detector physical size as 256mm*256mm, >>>>> and i got projection images P1.mha with size of 256^2 , now i downsample >>>>> these images with factor of 2( i.e., the images size change from 256^2 to >>>>> 128^2 ), from which i got P2.mha >>>>> in our rtkfdk, after the dowmsample. i just need change input >>>>> projections from P1.mha to P2.mha, besides, i need change flag newspacing >>>>> from 1 to 2. both of the results from RTK are pretty good. >>>>> my questions are: >>>>> 1) can i just regard the newspacing as the upsample operation with >>>>> nearest neighbor filter?? >>>>> 2) how many rays RTK generated in forward projecion (i.e. ray tracing >>>>> part ) for each image in P2.mha??? is it 256^2???? >>>>> >>>>> To sum up,in my own application, can i reproduce the result from RTK >>>>> for flag "newspacing as 2" by doing: >>>>> upsample image by factor of 2 (got a 256mm*256mm image ) and just >>>>> generate half number of rays in raytracing (forward priject ) part??? >>>>> >>>>> Thanks for your time and help in advance, >>>>> -Regards Guangming >>>>> >>>>> >>>>> >>>>> On Sat, Feb 20, 2016 at 1:15 AM, Simon Rit < >>>>> simon.rit at creatis.insa-lyon.fr> wrote: >>>>> >>>>>> Hi Guangming, >>>>>> The parameter is processed in rtkGgoFunctions >>>>>> .h. >>>>>> It's passed to an itk::ChangeInformationFilter >>>>>> >>>>>> at the beginning of the rtk::ProjectionsReader.h >>>>>> . >>>>>> But in the end, there is nothing to explain, it's simply changes the >>>>>> spacing of the input projections. >>>>>> I hope this helps, >>>>>> Simon >>>>>> >>>>>> On Fri, Feb 19, 2016 at 8:52 PM, Guangming Zang < >>>>>> guangming.zang at kaust.edu.sa> wrote: >>>>>> >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Guangming Zang >>>>>>> Date: Fri, Feb 19, 2016 at 10:49 PM >>>>>>> Subject: About the newspacing flag >>>>>>> To: rtk-users-request at public.kitware.com, Chao Wu < >>>>>>> wuchao04 at gmail.com>, Simon Rit , " >>>>>>> rtk-users at public.kitware.com" , >>>>>>> rtk-users at openrtk.org >>>>>>> >>>>>>> >>>>>>> Dear RTK community, >>>>>>> i have a question about the parameter "newspacing " in rtkFDK and >>>>>>> rtkSART algorithm. >>>>>>> it says:--newspacing new spacing of input projections (before >>>>>>> pre-processing). >>>>>>> I checked in the code, and it seems not easy to find the correct >>>>>>> part in the code about the newspacing . >>>>>>> So could anyone help me and explain about this parameter?? i want >>>>>>> to simulate this preprocess step in my own project and compare to our RTK. >>>>>>> -best regards Guangming >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Guangming Zang (Alex)* >>>>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------ >>>>>>> This message and its contents, including attachments are intended >>>>>>> solely for the original recipient. If you are not the intended recipient or >>>>>>> have received this message in error, please notify me immediately and >>>>>>> delete this message from your computer system. Any unauthorized use or >>>>>>> distribution is prohibited. Please consider the environment before printing >>>>>>> this email. >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rtk-users mailing list >>>>>>> Rtk-users at public.kitware.com >>>>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Guangming Zang (Alex)* >>>>> *King Abdullah University of Science and Technology(KAUST)* >>>>> *University of Chinese Academy of Sciences(UCAS)* >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------ >>>>> This message and its contents, including attachments are intended >>>>> solely for the original recipient. If you are not the intended recipient or >>>>> have received this message in error, please notify me immediately and >>>>> delete this message from your computer system. Any unauthorized use or >>>>> distribution is prohibited. Please consider the environment before printing >>>>> this email. >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> http://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> >>>> >>> >>> >>> -- >>> *Guangming Zang (Alex)* >>> *King Abdullah University of Science and Technology(KAUST)* >>> *University of Chinese Academy of Sciences(UCAS)* >>> >>> >>> >>> >>> ------------------------------ >>> This message and its contents, including attachments are intended solely >>> for the original recipient. If you are not the intended recipient or have >>> received this message in error, please notify me immediately and delete >>> this message from your computer system. Any unauthorized use or >>> distribution is prohibited. Please consider the environment before printing >>> this email. >>> >> >> > -- *Guangming Zang (Alex)* *King Abdullah University of Science and Technology(KAUST)* *University of Chinese Academy of Sciences(UCAS)* -- ------------------------------ This message and its contents, including attachments are intended solely for the original recipient. If you are not the intended recipient or have received this message in error, please notify me immediately and delete this message from your computer system. Any unauthorized use or distribution is prohibited. Please consider the environment before printing this email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Fri Feb 26 14:23:27 2016 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Fri, 26 Feb 2016 20:23:27 +0100 Subject: [Rtk-users] RTK questions In-Reply-To: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> References: <2378BA757C1CF14FB347BEA62742116801A31F44@CC-CLEXMB57.cc.ad.cchs.net> Message-ID: <56D0A62F.5020806@creatis.insa-lyon.fr> Hi, Please use the mailing list for your RTK questions, it's of interest to everyone. From the command line, there is no option to filter the images with a Gaussian. If you use Python wrapping, I recommend SimpleITK which should have such filters. If you program a C++ application, you can use one of the Gaussian filters of ITK, there are many. For noise, you have rtk::AdditiveGaussianNoiseImageFilter in RTK. Let us know if you need more information Simon On 26/02/2016 19:58, Qiu, Lei wrote: > > > > > > > > > Hi Dr. Rit, > > > > I am a researcher at Cleveland Clinic, Ohio, USA. I am trying to use > your code to process some CT images. I am wondering if you have some > instructions about how to add Gaussian Blur and Gaussian Noise on to > my images. Thanks! > > > > > Best > > > Richard > > > > > =================================== > > Please consider the environment before printing this e-mail > > > > Cleveland Clinic is ranked as one of the top hospitals in America by > U.S.News & World Report (2015). > Visit us online at http://www.clevelandclinic.org for a complete > listing of our services, staff and locations. > > > Confidentiality Note: This message is intended for use only by the > individual or entity to which it is addressed and may contain > information that is privileged, confidential, and exempt from > disclosure under applicable law. If the reader of this message is not > the intended recipient or the employee or agent responsible for > delivering the message to the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > communication is strictly prohibited. If you have received this > communication in error, please contact the sender immediately and > destroy the material in its entirety, whether electronic or hard copy. > > Thank you. > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: