[Rtk-users] Issues using PhaseGatingImageFilter

Simon Rit simon.rit at creatis.insa-lyon.fr
Sat Nov 1 12:22:14 CET 2014


Hi Geoff,
I agree with your analysis, PhaseGatingImageFilter is not adequate for
streaming, which is not surprising since Cyril uses it for iterative
reconstruction and he typically works with the full stack of
projections in RAM. I think there is a simple solution: move the
update of the geometry from the GenerateData to the
GenerateOutputInformation. That should solve the issue for you.
Enclosed is a change suggestion, can you give it a try in the
application you have built?
I'll commit it if it helps,
Simon

On Fri, Oct 31, 2014 at 9:29 PM, Geoff Hugo <gdhugo at vcu.edu> wrote:
> I’m trying to use the PhaseGatingImageFilter class to reconstruct a single
> breathing phase volume and am running into some problems.  I’ve incorporated
> this class into an application similar to rtkfdk, putting it in the pipeline
> between ParkerShortScanImageFilter and FDKConeBeamReconstructionFilter.  If
> I run the application trying to select a subset of projections using the
> method SetGatingWindowCenter, I get a segmentation fault.  The fault is
> occurring due to allocation errors in
> rtk::BackProjectionImageFilter::GenerateInputRequestedRegion.  It appears
> that since the geometry specific to the selected projections is selected in
> PhaseGatingImageFilter::GenerateData, there is a disconnect between the
> geometry size and projection stack size during GenerateInputRequestedRegion
> in the pipeline (pipeline OutputInformation shows the projection stack size
> is equal to the size of the selected breathing phase projections, but the
> geometry size is still the total number of (unsorted) projections).
>
> I can workaround this problem by calling PhaseGatingImageFilter->Update(),
> but I think this will break the streaming functionality?  Any easy solutions
> to this problem that will preserve streaming and let me run the full
> pipeline with only one Update call?  My guess is I will need to move the
> geometry subselection to PhaseGatingImageFilter::GenerateOutputInformation()
> then call UpdateOutputInformation in the main application?
>
> Thanks,
> Geoff
>
> ------------------------------------
> Geoffrey D. Hugo, Ph.D.
> Associate Professor, Radiation Oncology
> Director, Medical Physics Graduate Program
> Virginia Commonwealth University
> (804) 628 3457
>
>
>
> _______________________________________________
> Rtk-users mailing list
> Rtk-users at public.kitware.com
> http://public.kitware.com/mailman/listinfo/rtk-users
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rtkPhaseGatingImageFilter.txx
Type: application/octet-stream
Size: 9060 bytes
Desc: not available
URL: <http://www.creatis.insa-lyon.fr/pipermail/rtk-users/attachments/20141101/68dd4592/attachment.obj>


More information about the Rtk-users mailing list