[Insight-users] 转发: [Insight-users] Que stion About DeformableMesh3dFilter

Luis Ibanez luis.ibanez at kitware.com
Mon, 15 Mar 2004 23:03:34 -0500


Hi Zhao,


1) Please look at the mesh decimation
   filters in VTK, for example:

http://www.vtk.org/doc/nightly/html/classvtkDecimate.html


2) The example on deformable registration 2 uses
   the Demons Algorithm. This is an alternative to
   the Mesh-based deformable models, since it computes
   a deformation field between two images.  It may or
   may not be applicable to your problem, depending on
   what the overal purpose of your project is.



Regards,


   Luis


-------------------------
zhao yong qiang wrote:

> 
> -----邮件原件-----
> 发件人: Zhao yongqiang [mailto:zhao-yq at cs.sjtu.edu.cn] 
> 发送时间: 2004年3月15日 22:09
> 收件人: 'Luis Ibanez'
> 主题: 答复: [Insight-users] Question About DeformableMesh3dFilter
> 
> Hi Luis,
>     1. Can you give me an example of the clean algorithm or some detail
> of the algorithm?
>    2. I read the example you told me, but I don’t catch what you want
> to tell me.
>    Best Regards!!! 
> 
> -----邮件原件-----
> 发件人: Luis Ibanez [mailto:luis.ibanez at kitware.com] 
> 发送时间: 2004年3月12日 22:07
> 收件人: zhao yong qiang
> 抄送: insight-users at itk.org
> 主题: Re: [Insight-users] Question About DeformableMesh3dFilter
> 
> 
> Hi Zhao,
> 
> The BinaryMask3DMeshSource class produces Meshes that
> are not well adapted for deformable models because
> they have large numbers of triangles that thin-edge
> shaped.
> 
> You may have to run a cleaning algorithm on the Mesh
> before using it as initialization for the deformable
> model filter.
> 
> 
> For an alternatgive approach, please look at the new
> example under:
> 
>    Insight/Examples/Registration/
>             DeformableRegistration2.cxx
> 
> 
> 
> Regards,
> 
> 
>    Luis
> 
> 
> 
> -----------------------
> zhao yong qiang wrote:
> 
> 
>>Hi all,
>>
>>     I wrote the following code:
>>
>> 
>>
>>   m_stiff[0] = 0.00001;
>>
>>   m_stiff[1] = 0.04;
>>
>>   m_scale[0] = 1;
>>
>>   m_scale[1] = 1;
>>
>>   m_scale[2] = 1;
>>
>> 
>>
>>
> 
> m_BinaryMask3DMeshSource->SetBinaryImage(m_CastImageFilter->GetOutput())
> ;
> 
>>m_BinaryMask3DMeshSource->SetObjectValue(200);
>>
>> 
>>
>>m_GradientMapFilter->SetInput(gradientMagnitudeFilter->GetOutput());
>>
>>m_GradientMapFilter->SetSigma(1.0);
>>
>>m_GradientMapFilter->Update();
>>
>> 
>>
>>m_DeformableMesh3DFilter->SetStiffness(m_stiff);
>>
>>m_DeformableMesh3DFilter->SetTimeStep(0.2);
>>
>>m_DeformableMesh3DFilter->SetStepThreshold(10);
>>
>>m_DeformableMesh3DFilter->SetScale(m_scale);
>>
>>m_DeformableMesh3DFilter->SetGradientMagnitude(0.8);
>>
>> 
>>
>>
> 
> m_DeformableMesh3DFilter->SetGradient(m_GradientMapFilter->GetOutput());
> 
>>
> m_DeformableMesh3DFilter->SetInput(m_BinaryMask3DMeshSource->GetOutput()
> );
> 
>> 
>>
>>try
>>
>>{
>>
>>        m_DeformableMesh3DFilter->Update();//At this point, access 
>>violation
>>
>>}
>>
>>catch(itk::ExceptionObject & excep)
>>
>>{
>>
>>        std::cerr << "Exception Caught!"<<std::endl;
>>
>>}
>>
>> 
>>
>>I use try/catch, but I can not catch the exception, just access 
>>violation when m_DeformableMesh3Dfilter->Update()..
>>
>>Can some give me a hand?
>>
>>Thanks a lot!!!
>>
>>Regards,
>>                          Zhao Yongqiang
>>                          Dept. of Computer Science & Engineering
>>                          Shanghai JiaoTong University
>>                          Shanghai, China
>>                          zhao-yq at cs.sjtu.edu.cn 
>><mailto:zhao-yq at cs.sjtu.edu.cn>
>>
>> 
>>
> 
> 
> 
> 
> 
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>