[Insight-users] Extract Image Filter
Luis Ibanez
luis.ibanez@kitware.com
Tue, 04 Feb 2003 14:10:55 -0500
Jim,
Well, may this is the problem....
fltkImageViewer uses internally the GLSliceViewer
which in the SetInputImage() method it asks for
GetLargestPossibleRegion()
Should be change it for "GetRequestedRegion()"
or "GetBufferedRegion()" ?
Luis
--------------------------------------------
Miller, James V (Research) wrote:
> Luis,
>
>
>
> Does this mean there is an issue with the FLTK image viewer? Is it
> triggering off the wrong Region?
>
>
>
> Jim
>
> -----Original Message-----
> *From:* Puja Malik [mailto:puja.malik@MEMcenter.unibe.ch]
> *Sent:* Tuesday, February 04, 2003 11:27 AM
> *To:* itk newsgroup
> *Subject:* [Insight-users] Extract Image Filter
>
> Hi Luis,
>
> I've managed to fix my problem in the ExtractImageFilter. I do have
> one concern though. I cannot directly use the image object from the
> output of the filter, and view it in the fltk image filter. If I do
> this, the images intensity range is altered, and the first slice is
> distorted. I must first write the output of the filter ( image
> object ) to a file, read it back into a new image object and then
> view it. This way, I see a correctly extracted image. This is very
> strange. It would be convenient if the output of the filter could
> be used directly. Please see my code below, including the extra
> steps I needed to perform to get the desired results.
>
> void ExtractImageRegion(ImageType::Pointer imIN, ImageType::SizeType
> regSize,
> ImageType::IndexType
> regIndex)
> {
>
> typedef itk::ExtractImageFilter< ImageType, ImageType > FilterType;
> FilterType::Pointer filter = FilterType::New();
> ImageType::Pointer imOUT;
>
> ImageType::RegionType region;
> region.SetSize(regSize);
> region.SetIndex(regIndex);
>
> filter->SetExtractionRegion(region);
> filter->SetInput(imIN);
> filter->Update();
>
> // View(filter->GetOutput(), "region"); <-- doing this directly
> shows a distorted image
>
> //the following is the extra steps needed to view a correct image
> //View, Read, WriteMetaFile are my own functions written using itk
> classes.
> imOUT = filter->GetOutput();
> imOUT->DisconnectPipeline();
>
> ImageType::Pointer im;
> WriteMetaFile("/home/encephalon/puja/testRegion.mhd", imOUT);
> im=Read("/home/encephalon/puja/testRegion.mhd");
> View(im, "region");
>
> }
>
> Thanks for your help,
> Puja
>
> --
> ---------------------------------------
> Puja Malik
> Surgical Instruments Group
> MEM Research Center for Orthopaedic Surgery
> Institute for Surgical Technology and Biomechanics
> University of Bern
> Murtenstrasse 35, P.O. Box 8354
> 3010 Bern, Switzerland
> Phone: +41-31-632-8730
> Fax: +41-31-632-4951
> Email: Puja.Malik@MEMcenter.unibe.ch
> http://www.MEMcenter.unibe.ch
> ---------------------------------------
>
>
>