Hello,
I am trying to do the wrapping for the RegularizedConjugateGradientConeBeamReconstructionFilter, do I need to wrap all the filters that it uses ?
Is there any guiding document for the wrapping method?

Regards,
Johnson

On 3/18/2016 9:31 AM, Cyril Mory wrote:
Hi again,

You got the SART filter right. As for the conjugate gradient, the filter is actually ConjugateGradientConeBeamReconstructionFilter (for the 3D non-regularized reconstruction) and RegularizedConjugateGradientConeBeamReconstructionFilter (its regularized counterpart).

The filter you found, FourDConjugateGradientConeBeamReconstructionFilter, is used for 4D reconstruction (you need a cardiac or respiratory phase signal). Its regularized counterpart is FourDROOSTERConeBeamReconstructionFilter.

In addition to those, RTK also has ADMMTotalVariationConeBeamReconstructionFilter and ADMMWaveletsConeBeamReconstructionFilter, which implement the Alternating Direction Method of Multiplier algorithm.

You can find a description of these algorithms in https://hal.inria.fr/tel-00985728/document

Note that the SART filter has a m_NumberOfProjectionsPerSubset member. Setting it to 1 (default) gives you SART, setting it to n with 1 < n < TotalNumberOfProjections gives you OS-SART, and setting it to n=TotalNumberOfProjections gives you SIRT.

That's pretty much all there is in RTK at the moment.
Cyril

On 03/18/2016 02:11 PM, Johnson Keiriz wrote:
Hello,
Can you please confirm that the following classes are the ones used for the iterative reconstruction:
1 - SART: SARTConeBeamReconstructionFilter
2- Conjugate gradient: FourDConjugateGradientConeBeamReconstructionFilter

Is there a 3D conjugate gradient?
Are these the only classes for iterative reconstruction?

Thanks,
Johnson

On 3/18/2016 4:12 AM, Cyril Mory wrote:
Hi Johnson,

Regarding the iterative methods:
- In SART, you can use the CUDA forward and back projectors, but the rest of the calculation is performed on CPU. We do not use SART a lot, so we have not fully optimized it. - Conjugate gradient, on the other hand, is entirely performed on the GPU. Note that a regularized conjugate gradient reconstruction filter is also available (with total variation denoising, wavelets denoising, and positivity enforcement)

I hope you will find what you need,
Regards,
Cyril

On 03/17/2016 08:54 PM, Johnson Keiriz wrote:

Hello,

I did rebuild and now things are working. I tested reconstruction with and without the filtering and there were differences. Though, I am not sure that filtering have provided a better reconstruction.

I want to experiment the iterative methods. Can you please confirm for me which iterative method are fully implemented in CUDA: is it the conjugate gradient or SART ?

I have noticed that they are not wrapped at all, any guide on how to introduce new filters?

Once I have tested my wrapping, I will submit a github pull-request.

Thanks,

Johnson

*From:*simon....@gmail.com [mailto:simon....@gmail.com] *On Behalf Of *Simon Rit
*Sent:* Thursday, March 17, 2016 1:54 PM
*To:* Johnson Keiriz
*Cc:* rtk-users@public.kitware.com
*Subject:* Re: [Rtk-users] Python Wrapping

Hi,

Good! Indeed, many things are not wrapped. There is a trick regarding modifications of the wrappings. You need to either start from scratch the compilation or delete the file SimpleRTK-prefix/src/SimpleRTK-stamp/SimpleRTK-configure. This will trigger a reconfiguration of the SimpleRTK and, hopefully, account for your modifications.

Don't hesitate to submit a github pull-request when you have something working.

Simon

On Thu, Mar 17, 2016 at 4:33 PM, Johnson Keiriz <jkei...@theobjects.com <mailto:jkei...@theobjects.com>> wrote:

Hello again,

I found out about the json wrapping files. I added the wrapping for all the filters, but I haven’t noticed any effect from setting the filters !!!

Any hints ?

Regards,

Johnson

*From:*Rtk-users [mailto:rtk-users-boun...@public.kitware.com <mailto:rtk-users-boun...@public.kitware.com>] *On Behalf Of *Johnson Keiriz
*Sent:* Thursday, March 17, 2016 9:23 AM
*To:* rtk-users@public.kitware.com <mailto:rtk-users@public.kitware.com>; Simon Rit
*Subject:* [Rtk-users] Python Wrapping

Hello,

I am using the Python wrapped version of RTK. I have a question regarding the wrapping:

It seems that not all functionality is available, for example: for the *CudaFDKConeBeamReconstructionFilter, *I was not able to set the cut frequency of the any of the filters

(RamLaK, Cosine, ShepLogan) except for the Hann . Are the methods not wrapped ?

Thanks,

Johnson

*Description: cid:image002.jpg@01CB5984.4EABACE0*

        

*Johnson Keiriz, PhD
Senior Software Engineer*

760 St-Paul W, #101
Montreal, QC
Canada  H3C 1M4
tel: (514) 843-3861 <tel:%28514%29%20843-3861>
ext 217

        



_______________________________________________
Rtk-users mailing list
Rtk-users@public.kitware.com
http://public.kitware.com/mailman/listinfo/rtk-users


--

*Johnson Keiriz, PhD
Senior Software Engineer*

760 St-Paul W, #101
Montreal, QC
Canada  H3C 1M4
tel: (514) 843-3861
ext 217



--

*Johnson Keiriz, PhD
Senior Software Engineer*

760 St-Paul W, #101
Montreal, QC
Canada  H3C 1M4
tel: (514) 843-3861
ext 217

_______________________________________________
Rtk-users mailing list
Rtk-users@public.kitware.com
http://public.kitware.com/mailman/listinfo/rtk-users

Reply via email to