[Insight-users] Re: the sigmoid image is entirely white
for GeodesicActiveContourLevelSet
Luis Ibanez
luis.ibanez at kitware.com
Tue Mar 27 16:48:47 EST 2007
Hi Goo,
That sounds strange...
Are you saving your images as DICOM images ?
As a viewer you may want to try using Slicer,
that you can download for free at:
www.slicer.org
or ParaView, that you can download for free at:
www.paraview.org
You can also build the ImageViewer application
that is available with InsightApplications:
InsightApplications/ImageViewer
for this last one you will need FLTK 1.1.6.
Regards,
Luis
============
Goo wrote:
> I am using EZDicom to visualize my result.
> and discovering the value of intensity is full -32768.
> it seems like overflow.
>
>
>
> 2007/3/27, Luis Ibanez < luis.ibanez at kitware.com
> <mailto:luis.ibanez at kitware.com>>:
>
>
> Hi Goo:
>
>
> A couple of comments:
>
>
> 1) What are you using for visualizing the images ?
>
> e.g. what is the viewer that leads you to conclude
> that your float images are "full white". ?
>
>
>
> 2) If you get to a case where the Gradient Magnitude
> looks fine, and the Sigmoid looks "full white", then
> you need to *REDUCE* the value of the Beta parameter
> in the Sigmoid filter.
>
> In order to find an appropriate value for Beta, you
> should study the values of the Gradient Magnitude image
> on the edges of the structures that you intend to segment.
>
>
>
> Please read the ITK Software Guide:
>
> http://www.itk.org/ItkSoftwareGuide.pdf
>
> advice on how to set up the Alpha and Beta parameters
> in the context of the LevelSets framework is given in
> sections:
>
>
> 9.3.1 "Fast Marching Segmentation" in pdf-page 565.
> Please read attentively pdf-page 569 and the
> discussion about K1 and K2 values.
>
> and, of course, please read section:
>
> 6.3.2. "Non linear mappings", in pdf-page 181-183.
>
>
>
>
> Regards,
>
>
> Luis
>
>
>
> -------------
> Goo wrote:
>> notice something:
>>
>> (1)
>> if the ExternalImageType used as float, the image of result
> will be white
>> entirely in every step (smooth,gradient and sigmoid).
>>
>> (2)
>> And if both ExternalImageType and InternalImageType are signed
> short,
>>
>> the image of smooth and gradient are fine but sigmoid image is
> whole white.
>>
>> (3) Unfortunately , the format for level set must be float.
>> How do I solve this problem???
>>
>>
>> 2007/3/27, Goo < gtshowtime at gmail.com
> <mailto:gtshowtime at gmail.com> <mailto:gtshowtime at gmail.com
> <mailto:gtshowtime at gmail.com>>>:
>>
>> Hi All:
>>
>> This question is so confused to me.
>> The output of sigmoid image is shown white entirely but
> gradient
>> image fine.
>>
>> The following are my programs:
>> if the ExternalImageType used as float, the image of result
> will be
>> white entirely in smooth,gradient and sigmoid.
>>
>> Please give me some guidance.
>> Regards.
>>
>>
> //----------------------------------CODE-------------------------------------------
>>
>> typedef itk::Image< signed short, 3 > InternalImageType;
>> typedef itk::Image< signed short, 3 > ExternalImageType;
>>
>> typedef itk::RescaleIntensityImageFilter<ExternalImageType,
>> InternalImageType> InputCastType;
>> typedef
> itk::RescaleIntensityImageFilter<InternalImageType,
>> ExternalImageType> OutputCastType;
>>
>> OutputCastType::Pointer m_SmoothObserver;
>> OutputCastType::Pointer m_GradientObserver;
>> OutputCastType::Pointer m_SigmoidObserver;
>>
>> typedef itk::ResampleImageFilter<
>> InternalImageType ,
> InternalImageType >
>> FilterType;
>> FilterType::Pointer SubSample = FilterType::New();
>>
>> typedef itk::AffineTransform< double, 3
> > TransformType;
>> TransformType::Pointer transform =
> TransformType::New();
>>
>> typedef itk::NearestNeighborInterpolateImageFunction<
>> InternalImageType, double >
>> InterpolatorType;
>> InterpolatorType::Pointer interpolator =
>> InterpolatorType::New();
>>
>> SubSample->SetInterpolator( interpolator );
>> SubSample->SetDefaultPixelValue( 50 );
>>
>> double spacing[ 3 ];
>> spacing[0] = InputCaster->GetOutput()->GetSpacing()[0];
>> spacing[1] =
> InputCaster->GetOutput()->GetSpacing()[1];
>> spacing[2] = InputCaster->GetOutput()->GetSpacing()[2];
>> SubSample->SetOutputSpacing( spacing );
>>
>> double origin [3];
>> origin[0] = 80*spacing[0];
>> origin[1] = 80*spacing[1];
>> origin[2] = 15*spacing[2];
>> SubSample->SetOutputOrigin(origin);
>>
>> InternalImageType::SizeType size;
>>
>> size[0] = 100;
>> size[1] = 100;
>> size[2] = 5;
>>
>> SubSample->SetSize( size );
>> SubSample->SetInput( InputCaster->GetOutput() );
>> SubSample->SetTransform( transform );
>> transform->SetIdentity();
>>
>> SubSample->Update();
>>
>>
>> typedef itk::CurvatureAnisotropicDiffusionImageFilter
>> < InternalImageType,InternalImageType >
>> SmoothingFilterType;
>>
>> typedef
> itk::GradientMagnitudeRecursiveGaussianImageFilter
>> < InternalImageType,InternalImageType >
>> GradientFilterType;
>>
>> typedef itk::SigmoidImageFilter
>> < InternalImageType,InternalImageType >
>> SigmoidFilterType;
>>
>> SmoothingFilterType::Pointer m_smoothing =
>> SmoothingFilterType::New();
>>
> GradientFilterType::Pointer m_gradientMagnitude =
>> GradientFilterType::New();
>> SigmoidFilterType::Pointer m_sigmoid =
>> SigmoidFilterType::New();
>>
>> m_smoothing->SetNumberOfIterations( m_SmoothIter );
>> m_smoothing->SetConductanceParameter(
> m_SmoothConductance );
>> m_smoothing->SetTimeStep( m_TimeStep );
>>
>> m_gradientMagnitude->SetSigma( m_sigma );
>>
>> m_sigmoid->SetOutputMinimum( m_SigmoidOutMin );
>> m_sigmoid->SetOutputMaximum( m_SigmoidOutMax );
>> m_sigmoid->SetAlpha( m_alpha );
>> m_sigmoid->SetBeta( m_beta );
>>
>> m_smoothing->SetInput( SubSample->GetOutput() );
>> m_gradientMagnitude->SetInput(
> m_smoothing->GetOutput() );
>> m_sigmoid->SetInput(
> m_gradientMagnitude->GetOutput() );
>>
>> m_SmoothObserver->SetInput(m_smoothing->GetOutput());
>>
> m_GradientObserver->SetInput(m_gradientMagnitude->GetOutput());
>> m_SigmoidObserver->SetInput(m_sigmoid->GetOutput());
>>
>> m_SmoothObserver->Update();
>> m_GradientObserver->Update();
>> m_SigmoidObserver->Update();
>>
>>
>>
>>
> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Insight-users mailing list
>> Insight-users at itk.org <mailto:Insight-users at itk.org>
>> http://www.itk.org/mailman/listinfo/insight-users
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
More information about the Insight-users
mailing list