[Rtk-users] Issues using PhaseGatingImageFilter

Chao Wu wuchao04 at gmail.com
Thu Jan 15 07:30:42 EST 2015


Dear all,

I am also looking at the PhaseGatingImageFilter. I think I am confused
by how the weights are computed in ComputeWeights().

At line 83 and 84 the distance is calculated by
distance = vnl_math_min(fabs(m_GatingWindowCenter - 1 -
m_Phases[proj]), fabs(m_GatingWindowCenter - m_Phases[proj]));
distance = vnl_math_min(distance, vnl_math_abs(m_GatingWindowCenter +
1.f - m_Phases[proj]));

Then this distance seems to be the smallest distance between the phase
number and any of the three adjacent gating window centers.
Afterwards this distance is used for computing the weight based on the
window width and shape.
Why are three window centers used here? To reconstruction phase N,
shouldn't only projections acquired within window N be used?

Another question is about using this filter in FDK. I was wondering
where's the best place to insert it. Before the
ParkerShortScanImageFilter or after?

Thanks.

Regards,
Chao


2014-11-03 18:15 GMT+01:00 Simon Rit <simon.rit at creatis.insa-lyon.fr>:
> Great, it's been pushed.
> Simon
>
> On Mon, Nov 3, 2014 at 4:15 PM, Geoff Hugo <gdhugo at vcu.edu> wrote:
>>
>> Hi Simon,
>>
>> Yes, this was what I was thinking as well.  Thanks for implementing it, it
>> worked fine.
>>
>> Geoff
>>
>> ------------------------------------
>> Geoffrey D. Hugo, Ph.D.
>> Associate Professor, Radiation Oncology
>> Director, Medical Physics Graduate Program
>> Virginia Commonwealth University
>> (804) 628 3457
>>
>>
>> On Nov 1, 2014, at 7:22 AM, Simon Rit <simon.rit at creatis.insa-lyon.fr>
>> wrote:
>>
>> > 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
>> >>
>> > <rtkPhaseGatingImageFilter.txx>
>>
>>
>
>
> _______________________________________________
> Rtk-users mailing list
> Rtk-users at public.kitware.com
> http://public.kitware.com/mailman/listinfo/rtk-users
>



More information about the Rtk-users mailing list