Well, I found a nice fast algorithm for a direct and an inverse Radon (almost) Transform and I think it lends itself for a nice implementation in PDL.
Press, William H. “Discrete Radon Transform Has an Exact, Fast Inverse and Generalizes to Operations Other than Sums along Lines.” Proceedings of the National Academy of Sciences 103, no. 51 (December 19, 2006): 19249–54. https://doi.org/10.1073/pnas.0609228103. I'll post my solution here if I succeed. Thanks and regards, Luis On Mon, Mar 09, 2020 at 01:51:01PM -0600, Craig DeForest wrote: > The “fft” option in PDL::Transform::map has to do with interpolation method, > and isn’t directly relevant (unfortunately). I used a subset of the radon > transform in one of my papers (see the appendix; link here: > https://bit.ly/38Bylg3 <https://bit.ly/38Bylg3>). That was all > roll-your-own, though: I never packaged it up as a full radon transform. > > If I were implementing one in the general case in PDL itself, I’d do > something like a Fourier transform followed by a PDL::Transform::map to > radial coordinates followed by an inverse Fourier transform. PDL::FFTW3 > would be the right tool for that. There’s probably something in the GSL > already, though — if so, one could just link to that. > > > > > > > On Mar 9, 2020, at 1:39 PM, Boyd Duffee <[email protected]> wrote: > > > > Hey Luis, > > > > From the deafening silence to your question, I'd say no. I had a quick > > look around CPAN and I see nothing for Radon in PDL or Perl in general. > > > > Then I had a look at what a Radon Transform > > <https://en.wikipedia.org/wiki/Radon_transform> actually is and it is > > **well cool**! We were talking last week about the episode of House with > > the bullet fragments and the MRI machine and started asking, how _do_ you > > get a 3D image from a bunch of attenuations? > > > > As it's not far off the Fourier transform, I'd say it's possible and maybe > > PDL::Transform's map <https://metacpan.org/pod/PDL::Transform#map1> > > function with it's { map => 'fft' } option is a place to start hacking. > > I'll have some free time in a couple of months if you want a willing > > novice-to-PDL collaborator. It sounds like something that Perl should have > > in it's toolbox if we want our language to be serious about Scientific > > Perl. I think I've got a "tuit" around here somewhere. :) > > > > Saludos, > > Boyd > > > > On Thu, Mar 5, 2020 at 4:37 AM Luis Mochan <[email protected] > > <mailto:[email protected]>> wrote: > > Hi, > > > > Is there an implementation of the Radon transform and its inverse in > > PDL? Or some implementation which may be called from PDL? > > > > Regards, > > Luis > > > > > > > > -- > > > > o > > W. Luis Mochán, | tel:(52)(777)329-1734 /<(*) > > Instituto de Ciencias Físicas, UNAM | fax:(52)(777)317-5388 `>/ /\ > > Apdo. Postal 48-3, 62251 | (*)/\/ \ > > Cuernavaca, Morelos, México | [email protected] > > <mailto:[email protected]> /\_/\__/ > > GPG: 791EB9EB, C949 3F81 6D9B 1191 9A16 C2DF 5F0A C52B 791E B9EB > > > > > > _______________________________________________ > > pdl-general mailing list > > [email protected] <mailto:[email protected]> > > https://lists.sourceforge.net/lists/listinfo/pdl-general > > <https://lists.sourceforge.net/lists/listinfo/pdl-general> > > > > > > -- > > Boyd Duffee > > Bring on a brand-new renaissance - TTH > > _______________________________________________ > > pdl-general mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/pdl-general > > _______________________________________________ > pdl-general mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/pdl-general -- o W. Luis Mochán, | tel:(52)(777)329-1734 /<(*) Instituto de Ciencias Físicas, UNAM | fax:(52)(777)317-5388 `>/ /\ Apdo. Postal 48-3, 62251 | (*)/\/ \ Cuernavaca, Morelos, México | [email protected] /\_/\__/ GPG: 791EB9EB, C949 3F81 6D9B 1191 9A16 C2DF 5F0A C52B 791E B9EB _______________________________________________ pdl-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/pdl-general
