[Insight-users] using itkVoronoiSegmentationImageFilter ?
Yinpeng Jin
yj76@columbia.edu
Mon, 21 Oct 2002 17:01:49 -0400
This is a multi-part message in MIME format.
------=_NextPart_000_0045_01C27923.8B80DE50
Content-Type: text/plain;
charset="ks_c_5601-1987"
Content-Transfer-Encoding: quoted-printable
VoronoiSegmenationImageFilter is a region-based classification, =
split-and-merge like algorithm.=20
you are perfectly right, it picks up all the similar color regions in =
whole image. It works well if you have multiple objects in the image to =
segment, it was used because SimpleFuzzyConnectedness can only pick up =
one connected component.
there is another version of FuzzyConnectedness, which is able to claim =
multiple objects (VectoriorFuzzyConnectedness)
And to use Deformable Models is definitedly a good idea, actually, all =
those three methods had been tested for combining together to build a =
hybrid segmentation framework.
I bet Celina, Jay and Dimitris can explain the idea better, for your =
reference, please look at following paper in MICCAI 2001:
C. Imielinska, D. Metaxas, J. Udupa, Y.Jin and T. Chen, "Hybrid =
Segmentation Methods of Anatomical Data." Proceedings of The Fourth =
International Conference on Medical Image Computing and Computer =
Assisted Interventions (MICCAI 2001), pp. 1058-1066, October 2001, =
Utrecht Netherlands.=20
----- Original Message -----=20
From: Seungbum Koo=20
To: Yinpeng Jin=20
Cc: insight-users@public.kitware.com=20
Sent: Monday, October 21, 2002 4:51 PM
Subject: Re: Re: [Insight-users] using =
itkVoronoiSegmentationImageFilter ?
Hi,=20
Thanks for the help. It worked and segmented but not as I expected. I =
don't understand well about VoronoiSegmentationImageFilter but it seems =
to segment all similar color regions in whole image as the seed region. =
I just wanted to find more exact boundary of that found using =
FuzzyConnectednessScalarFilter.=20
Anyway I think the VoronoiSegmentationImageFilter worked fine. What do =
you think about using DeformableMeshFilter instead of =
VoronoiSegmentationImageFilter?=20
regards=20
Seungbum Koo=20
> Title : Re: [Insight-users] using itkVoronoiSegmentationImageFilter =
?=20
> Date : Sun, 20 Oct 2002 13:34:32 -0400=20
> From : "Yinpeng Jin"=20
> To : Seungbum Koo,=20
>=20
> if you use takeaprior, then you don't want to setMean and setVar, =
those two parameters will be calculated from the binary mask.=20
> and=20
> try to use=20
> m_voronoiFilter->SetMeanPercentError(PERCENT);=20
> m_voronoiFilter->SetVarPercentError(VARPERCENT);=20
> in stead of=20
> m_voronoiFilter->SetMeanTolerance(10);=20
> m_voronoiFilter->SetVarTolerance(20);=20
>=20
> they are trying to manipulate the same parameter, but usually are =
more intuitive to figure.=20
> the MeanPercentError could usually be set between 0.1 to 0.3=20
> and the VarPercentError could be between 1 to 3. they don't depends =
on your pixel intensity range, while the MeanTolerance and VarTolerance =
usually do.=20
> Also, you can first output your m_binaryImage to see if it is =
something reasonable. the VoronoisegmentationImagefilter will need =
something at least represents=20
> parts of your target object as the a prior.=20
> Try the above, and let me know what happens.=20
> Yinpeng.=20
>=20
>=20
>=20
> ----- Original Message -----=20
> From: Seungbum Koo=20
> To: insight-users@public.kitware.com=20
> Sent: Sunday, October 20, 2002 12:45 AM=20
> Subject: [Insight-users] using itkVoronoiSegmentationImageFilter ?=20
>=20
>=20
> Hi,=20
>=20
> I'm trying to use itkVoronoiSegmentationImageFilter combined with =
itkSimpleFuzzyConnectednessScalarImageFilter.=20
>=20
> I made a binary image from =
itkSimpleFuzzyConnectednessScalarImageFilter but I couldn't figure out =
how to set itkVoronoiSegmentationImageFilter variables. Here is my =
source code.=20
>=20
> =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=20
> m_voronoiFilter->SetInput(m_rawImageSource->GetOutput());=20
> m_voronoiFilter->TakeAPrior(m_binaryImage);=20
> m_voronoiFilter->SetMean(520);=20
> m_voronoiFilter->SetVar(20);=20
> m_voronoiFilter->SetMeanTolerance(10);=20
> m_voronoiFilter->SetVarTolerance(20);=20
> // m_voronoiFilter->SetNumberOfSeeds(400); // ??=20
> m_voronoiFilter->SetSteps(5);=20
> m_voronoiFilter->Update();=20
> =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=20
>=20
> m_binaryImage is calculated from m_rawImageSource and as I expected. =
> But this code just makes a black image... all zeros.=20
> =20
Seungbum Koo =20
=20
=20
=20
"=BF=EC=B8=AE =C0=CE=C5=CD=B3=DD, Daum" http://www.daum.net =
=A1=BA =C6=F2=BB=FD=BE=B2=B4=C2 =B9=AB=B7=E1 =C7=D1=B8=DE=C0=CF=B3=DD =
=A1=BB
=20
=BA=FC=B8=A3=B4=D9! =C6=ED=C7=CF=B4=D9! =
Daum=B8=DE=BD=C5=C0=FA
=B8=C5=C0=CF=B8=C5=C0=CF =BE=B2=B0=ED =B0=E8=BD=C3=C1=D2? =
Daum=BF=A3=C5=CD=C4=AB=B5=E5
Daum=C8=B8=BF=F8=C0=C7 =C7=CA=BC=F6=C7=B0! =
=BF=C2=BF=C0=C7=C1 =C3=D6=B0=ED=C0=C7 =C7=FD=C5=C3~=20
=20
------=_NextPart_000_0045_01C27923.8B80DE50
Content-Type: text/html;
charset="ks_c_5601-1987"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Dks_c_5601-1987" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3504.2500" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>VoronoiSegmenationImageFilter is a =
region-based=20
classification, split-and-merge like algorithm. </FONT></DIV>
<DIV><FONT face=3DArial size=3D2>you are perfectly right, it picks up =
all the=20
similar color regions in whole image. It works well if you have multiple =
objects=20
in the image to segment, it was used because SimpleFuzzyConnectedness =
can only=20
pick up one connected component.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>there is another version of =
FuzzyConnectedness,=20
which is able to claim multiple objects=20
(VectoriorFuzzyConnectedness)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>And to use Deformable Models is =
definitedly a good=20
idea, actually, all those three methods had been tested for =
combining=20
together to build a hybrid segmentation framework.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I bet Celina, Jay and Dimitris can =
explain the idea=20
better, for your reference, please look at following paper in MICCAI=20
2001:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>C. Imielinska, D. Metaxas, J. Udupa, =
Y.Jin and T.=20
Chen, "Hybrid Segmentation Methods of Anatomical Data." <I>Proceedings =
of The=20
Fourth International Conference on Medical Image Computing and Computer =
Assisted=20
Interventions (MICCAI 2001)</I>, pp. 1058-1066, October 2001, Utrecht=20
Netherlands. </FONT></DIV>
<DIV> </DIV>
<DIV> </DIV>
<BLOCKQUOTE=20
style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: =
0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
<DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV=20
style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
<A href=3D"mailto:koosb2@hanmail.net" =
title=3Dkoosb2@hanmail.net>Seungbum Koo</A>=20
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>To:</B> <A =
href=3D"mailto:yj76@columbia.edu"=20
title=3Dyj76@columbia.edu>Yinpeng Jin</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>Cc:</B> <A=20
href=3D"mailto:insight-users@public.kitware.com"=20
=
title=3Dinsight-users@public.kitware.com>insight-users@public.kitware.com=
</A>=20
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Monday, October 21, 2002 =
4:51=20
PM</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Subject:</B> Re: Re: =
[Insight-users] using=20
itkVoronoiSegmentationImageFilter ?</DIV>
<DIV><BR></DIV>Hi, <BR>Thanks for the help. It worked and segmented =
but not as=20
I expected. I don't understand well about =
VoronoiSegmentationImageFilter but=20
it seems to segment all similar color regions in whole image as the =
seed=20
region. I just wanted to find more exact boundary of that found using=20
FuzzyConnectednessScalarFilter. <BR>Anyway I think the=20
VoronoiSegmentationImageFilter worked fine. What do you think about =
using=20
DeformableMeshFilter instead of VoronoiSegmentationImageFilter?=20
<BR><BR>regards <BR>Seungbum Koo <BR><BR>> Title : Re: =
[Insight-users]=20
using itkVoronoiSegmentationImageFilter ? <BR>> Date : Sun, 20 Oct =
2002=20
13:34:32 -0400 <BR>> From : "Yinpeng Jin" =
<YJ76@COLUMBIA.EDU><BR>> To :=20
Seungbum Koo<KOOSB2@HANMAIL.NET>,<INSIGHT-USERS@PUBLIC.KITWARE.COM> =
<BR>>=20
<BR>> if you use takeaprior, then you don't want to setMean and =
setVar,=20
those two parameters will be calculated from the binary mask. <BR>> =
and=20
<BR>> try to use <BR>> =
m_voronoiFilter->SetMeanPercentError(PERCENT);=20
<BR>> m_voronoiFilter->SetVarPercentError(VARPERCENT); <BR>> =
in stead=20
of <BR>> m_voronoiFilter->SetMeanTolerance(10); <BR>>=20
m_voronoiFilter->SetVarTolerance(20); <BR>> <BR>> they are =
trying to=20
manipulate the same parameter, but usually are more intuitive to =
figure.=20
<BR>> the MeanPercentError could usually be set between 0.1 to 0.3 =
<BR>>=20
and the VarPercentError could be between 1 to 3. they don't depends on =
your=20
pixel intensity range, while the MeanTolerance and VarTolerance =
usually do.=20
<BR>> Also, you can first output your m_binaryImage to see if it is =
something reasonable. the VoronoisegmentationImagefilter will need =
something=20
at least represents <BR>> parts of your target object as the a =
prior.=20
<BR>> Try the above, and let me know what happens. <BR>> =
Yinpeng.=20
<BR>> <BR>> <BR>> <BR>> ----- Original Message ----- =
<BR>>=20
From: Seungbum Koo <BR>> To: insight-users@public.kitware.com =
<BR>>=20
Sent: Sunday, October 20, 2002 12:45 AM <BR>> Subject: =
[Insight-users]=20
using itkVoronoiSegmentationImageFilter ? <BR>> <BR>> <BR>> =
Hi,=20
<BR>> <BR>> I'm trying to use itkVoronoiSegmentationImageFilter =
combined=20
with itkSimpleFuzzyConnectednessScalarImageFilter. <BR>> <BR>> I =
made a=20
binary image from itkSimpleFuzzyConnectednessScalarImageFilter but I =
couldn't=20
figure out how to set itkVoronoiSegmentationImageFilter variables. =
Here is my=20
source code. <BR>> <BR>>=20
=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D <BR>>=20
m_voronoiFilter->SetInput(m_rawImageSource->GetOutput()); =
<BR>>=20
m_voronoiFilter->TakeAPrior(m_binaryImage); <BR>>=20
m_voronoiFilter->SetMean(520); <BR>> =
m_voronoiFilter->SetVar(20);=20
<BR>> m_voronoiFilter->SetMeanTolerance(10); <BR>>=20
m_voronoiFilter->SetVarTolerance(20); <BR>> //=20
m_voronoiFilter->SetNumberOfSeeds(400); // ?? <BR>>=20
m_voronoiFilter->SetSteps(5); <BR>> =
m_voronoiFilter->Update();=20
<BR>> =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=20
<BR>> <BR>> m_binaryImage is calculated from m_rawImageSource =
and as I=20
expected. <BR>> But this code just makes a black image... all =
zeros.=20
<BR>>
<TABLE align=3Dcenter border=3D0 cellPadding=3D0 cellSpacing=3D1>
<TBODY>
<TR>
<TD align=3Dmiddle bgColor=3D#ffffff width=3D130><IFRAME =
border=3D0=20
frameBorder=3D0 height=3D150 scrolling=3Dno=20
=
src=3D"http://avatarfile.hanmail.net/bin/getavatar?EUSERID=3DERhXTWfI29g0=
&LOOK=3D1"=20
width=3D130></IFRAME></TD>
<TD align=3Dleft vAlign=3Dcenter>
<TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0>
<TBODY>
<TR>
<TD><IMG =
src=3D"http://image.hanmail.net/hm/av/box1_c1.gif"></TD>
<TD =
background=3Dhttp://image.hanmail.net/hm/av/box1_upbg.gif></TD>
<TD><IMG =
src=3D"http://image.hanmail.net/hm/av/box1_c2.gif"></TD></TR>
<TR>
<TD background=3Dhttp://image.hanmail.net/hm/av/box1_lbg.gif =
vAlign=3Dtop><IMG=20
src=3D"http://image.hanmail.net/hm/av/box1_c11.gif"></TD>
<TD background=3Dhttp://image.hanmail.net/hm/av/box1_bg.gif=20
style=3D"LINE-HEIGHT: 120%; PADDING-BOTTOM: 10px; =
PADDING-LEFT: 10px; PADDING-RIGHT: 10px; PADDING-TOP: 10px"><FONT=20
color=3D#775100>Seungbum Koo</FONT></TD>
<TD =
background=3Dhttp://image.hanmail.net/hm/av/box1_rbg.gif></TD></TR>
<TR>
<TD><IMG =
src=3D"http://image.hanmail.net/hm/av/box1_c3.gif"></TD>
<TD =
background=3Dhttp://image.hanmail.net/hm/av/box1_dwbg.gif></TD>
<TD><IMG=20
=
src=3D"http://image.hanmail.net/hm/av/box1_c4.gif"></TD></TR></TBODY></TA=
BLE></TD>
<TD> </TD></TR></TBODY></TABLE><BR><BR>
<TABLE border=3D0 cellPadding=3D5 cellSpacing=3D0 width=3D"100%">
<TBODY>
<TR>
<TD =
background=3Dhttp://image.hanmail.net/hanmail/general/dotline_sim.gif=20
height=3D1></TD></TR>
<TR>
<TD><FONT color=3D#312400 style=3D"FONT-SIZE: 9pt">"=BF=EC=B8=AE =
=C0=CE=C5=CD=B3=DD, Daum" <A=20
href=3D"http://www.daum.net" target=3D_top><FONT=20
color=3D#312400>http://www.daum.net</FONT></A> =A1=BA =
=C6=F2=BB=FD=BE=B2=B4=C2 =B9=AB=B7=E1 =C7=D1=B8=DE=C0=CF=B3=DD=20
=A1=BB<BR></FONT></TD></TR></TBODY></TABLE>
<TABLE bgColor=3D#ececec border=3D0 cellPadding=3D0 cellSpacing=3D1 =
width=3D"100%">
<TBODY>
<TR bgColor=3D#f8f8f8>
<TD>
<TABLE border=3D0 cellPadding=3D3 cellSpacing=3D0 =
width=3D"100%">
<TBODY>
<TR>
<TD align=3Dright noWrap width=3D50><A=20
href=3D"http://hmm.daum.net/footer_msg" =
target=3D_blank><IMG border=3D0=20
height=3D40=20
=
src=3D"http://image.hanmail.net/hanmail/top/adver/messenger.gif"=20
width=3D40></A></TD>
<TD class=3Dbase style=3D"FONT-SIZE: 9pt" width=3D"50%"><A=20
href=3D"http://hmm.daum.net/footer_msg" =
target=3D_blank><FONT=20
color=3D#bd8000 style=3D"FONT-SIZE: =
9pt">=BA=FC=B8=A3=B4=D9! =C6=ED=C7=CF=B4=D9!=20
=
Daum=B8=DE=BD=C5=C0=FA</FONT></A><BR>=B8=C5=C0=CF=B8=C5=C0=CF =
=BE=B2=B0=ED =B0=E8=BD=C3=C1=D2?</TD>
<TD noWrap width=3D3><IMG height=3D40=20
src=3D"http://image.hanmail.net/hm/line_h.gif" =
width=3D3></TD>
<TD width=3D40><A href=3D"http://hmm.daum.net/card_0401"=20
target=3D_blank><IMG border=3D0 height=3D40=20
=
src=3D"http://image.hanmail.net/hanmail/top/adver/ecard.gif"=20
width=3D40></A></TD>
<TD class=3Dbase style=3D"FONT-SIZE: 9pt" width=3D"50%"><A=20
href=3D"http://hmm.daum.net/card_0401" =
target=3D_blank><FONT=20
color=3D#bd8000=20
style=3D"FONT-SIZE: =
9pt">Daum=BF=A3=C5=CD=C4=AB=B5=E5</FONT></A><BR>Daum=C8=B8=BF=F8=C0=C7 =
=C7=CA=BC=F6=C7=B0! =BF=C2=BF=C0=C7=C1 =C3=D6=B0=ED=C0=C7=20
=C7=FD=C5=C3~</TD></TR></TBODY></TABLE></TD>
<TD align=3Dmiddle width=3D135><A =
href=3D"http://hmm.daum.net/footer_ad_1007"=20
target=3Dnew><IMG border=3D0=20
src=3D"http://image.hanmail.net/hm/ad/lotte_1.gif" width=3D120=20
height40></A></TD></TR></TBODY></TABLE><IMG=20
=
src=3D"http://www24.hanmail.net/Mail-bin/chkcmail?from=3Dkoosb2&rcpt=3D=
yj76%40columbia%2Eedu&msgid=3D%3C20021022055115%2EHM%2EN00000000052U3=
W%40www24%2Ehanmail%2Enet%3E"></BLOCKQUOTE></BODY></HTML>
------=_NextPart_000_0045_01C27923.8B80DE50--