From salah@gris.uni-tuebingen.de Mon Jul 1 10:28:35 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Mon, 1 Jul 2002 11:28:35 +0200 Subject: [Insight-users] fatal error LNK1104: cannot open file "VXLNumerics.lib" Message-ID: <00b201c220e1$ac6473b0$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_00AF_01C220F2.6FDCA1E0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable helow all, I have used Cmake to create the ITK workspace. I had two problems: 1. not all examples in the example directory were. 2. When I build any example in VC++ , I got always the following error LINK : fatal error LNK1104: cannot open file "VXLNumerics.lib" I saw in a message to Samuel=20 Please rerun CMake and set BUILD_SHARED_LIBS=3D"OFF" In fact I did not find BUILD_SHARED_LIBS at all ?!?!?!?!? Thanks, zein ------=_NextPart_000_00AF_01C220F2.6FDCA1E0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
helow all,
 
I have used Cmake to create the ITK workspace. I had two = problems:
1. not all examples in the example directory were.
2. When I build any example in VC++ , I got always the following=20 error
 
LINK : fatal error LNK1104: cannot open file = "VXLNumerics.lib"
 
I saw in a message to Samuel =
 
Please rerun CMake and set

     =20 BUILD_SHARED_LIBS=3D"OFF"
 
In fact I did not find BUILD_SHARED_LIBS at all ?!?!?!?!?

Thanks,
zein
------=_NextPart_000_00AF_01C220F2.6FDCA1E0-- From zeinsalah@web.de Mon Jul 1 10:40:42 2002 From: zeinsalah@web.de (zien salah) Date: Mon, 1 Jul 2002 11:40:42 +0200 Subject: [Insight-users] Message-ID: <200207010940.g619egX24313@mailgate5.cinetic.de> helow all, I have used Cmake to create the ITK workspace. I had two problems: 1. not all examples in the example directory were. 2. When I build any example in VC++ , I got always the following error LINK : fatal error LNK1104: cannot open file "VXLNumerics.lib" I saw in a message to Samuel Please rerun CMake and set BUILD_SHARED_LIBS="OFF" In fact I did not find BUILD_SHARED_LIBS at all ?!?!?!?!? Thanks, zein ______________________________________________________________________________ FreeMail in der Premiumversion! Mit mehr Speicher, mehr Leistung, mehr Erlebnis und mehr Pramie. Jetzt unter http://club.web.de/?mc=021105 From Linglan Edwards Mon Jul 1 13:47:11 2002 From: Linglan Edwards (Linglan Edwards) Date: Mon, 1 Jul 2002 08:47:11 -0400 (EDT) Subject: [Insight-users] Question: Problem with ITKSourceUnixBeta2.tar.gz Message-ID: <200207011247.IAA10140@lhc.nlm.nih.gov> I just downloaded ITKSourceUnixBeta2.tar.gz, when I tried to un-tar it, I got the following error message: ...... x Insight/Code/Numerics/FEM/itkFEMLoadImplementationGenericBodyLoad.cxx, 3052 bytes, 6 tape blocks tar: directory checksum error Does anybody know what the problem is? Thanks, Linglan Edwards ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From bahrahm@yahoo.com Mon Jul 1 14:07:13 2002 From: bahrahm@yahoo.com (Jisung Kim) Date: Mon, 1 Jul 2002 06:07:13 -0700 (PDT) Subject: [Insight-users] fatal error LNK1104: cannot open file "VXLNumerics.lib" In-Reply-To: <00b201c220e1$ac6473b0$aeb00286@wsigris.unituebingen.de> Message-ID: <20020701130713.61934.qmail@web10101.mail.yahoo.com> Hellow Zein. Could you post your CMakeCache.txt file to this list? You can find the file at the root directory of you ITK binary directory where you can also find ITK.dsw file. Thanks, Jisung Kim. --- Zein Salah wrote: > helow all, > > I have used Cmake to create the ITK workspace. I had > two problems: > 1. not all examples in the example directory were. > 2. When I build any example in VC++ , I got always > the following error > > LINK : fatal error LNK1104: cannot open file > "VXLNumerics.lib" > > I saw in a message to Samuel > > Please rerun CMake and set > > BUILD_SHARED_LIBS="OFF" > > > In fact I did not find BUILD_SHARED_LIBS at all > ?!?!?!?!? > > Thanks, > > zein > ===== Jisung Kim bahrahm@yahoo.com 106 Mason Farm Rd. 129 Radiology Research Lab., CB# 7515 Univ. of North Carolina at Chapel Hill Chapel Hill, NC 27599-7515 __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From mutz@kde.org Mon Jul 1 14:22:42 2002 From: mutz@kde.org (Marc Mutz) Date: Mon, 1 Jul 2002 15:22:42 +0200 Subject: [Insight-users] I might be dumb, but... Message-ID: <200207011522.43957@sendmail.mutz.com> --Boundary-00=_ieFI9KKh1SBTlEM Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-Description: clearsigned data Content-Disposition: inline =2D----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi! =2E.. I can't get "make install" to work (cmake 1.2 p3, Linux). I do=20 ccmake, then "make", then "make install". But all that is installed is=20 libitkzlib and libitkpng. CMakeCache.txt attached... Marc BTW: Why are there no config options for using the system zlib and a=20 system libpng if available? Why does every project have it's own zlib and it's own build system? :-( =2D --=20 Marc Mutz =2D----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (GNU/Linux) iD8DBQE9IFei3oWD+L2/6DgRAsFGAJ9bpFeWpn/uOXCkqy8TMSC2DDZTBwCgxvam S/juN1+8SeCp2po3P3V0Zig=3D =3DXflh =2D----END PGP SIGNATURE----- --Boundary-00=_ieFI9KKh1SBTlEM Content-Type: text/plain; charset="us-ascii"; name="CMakeCache.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="CMakeCache.txt" # This is the CMakeCache file. # For build in directory: /home/mmutz/ITK/build # You can edit this file to change values found and used by cmake. # If you do not want to change any of the values, simply exit the editor. # If you do want to change a value, simply edit, save, and exit the editor. # The syntax for the file is as follows: # KEY:TYPE=VALUE # KEY is the name of a varible in the cache. # TYPE is a hint to GUI's for the type of VALUE, DO NOT EDIT TYPE!. # VALUE is the current value for the KEY. ######################## # EXTERNAL cache entries ######################## //Build the unsupported directory BUILD_AUXILIARY:BOOL=ON //Build the examples directory BUILD_EXAMPLES:BOOL=ON //Build the FEM Code BUILD_FEM_CODE:BOOL=ON //Build the FEM-Mesh example BUILD_FEM_MESH_EXAMPLE:BOOL=OFF //Build the MetaImage Library BUILD_METAIMAGE:BOOL=ON //Build with shared libraries. BUILD_SHARED_LIBS:BOOL=ON //Build the testing tree. BUILD_TESTING:BOOL=ON //Archive program used to make archive libraries. CMAKE_AR:FILEPATH=/usr/bin/ar //Arguments for CMAKE_AR program to create an archive library. CMAKE_AR_ARGS:STRING=cr //Name of C++ compiler used. CMAKE_CXX_COMPILER:FILEPATH=c++ //Flags used by CXX compiler. CMAKE_CXX_FLAGS:STRING=-march=pentiumpro -g -O2 //Name of C compiler used. CMAKE_C_COMPILER:FILEPATH=gcc //Flags for C compiler. CMAKE_C_FLAGS:STRING=-march=pentiumpro -g -O2 //Dynamic link library to link in. CMAKE_DL_LIBS:STRING=-ldl //Use HP pthreads. CMAKE_HP_PTHREADS:BOOL=OFF //Install path prefix, prepended onto install directories. CMAKE_INSTALL_PREFIX:PATH=/usr/local //Library extension used by this machine. CMAKE_LIB_EXT:STRING= //Path to a program. CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake //Flag used by CXX to build a shared library. CMAKE_MODULE_BUILD_FLAGS:STRING=-shared //Flags used to link a shared library. CMAKE_MODULE_LINK_FLAGS:STRING=-rdynamic //Module library suffix. CMAKE_MODULE_SUFFIX:STRING=.so //Library randomizer program used on archive libraries. CMAKE_RANLIB:FILEPATH=ranlib //Flag used by CXX to build a shared library. CMAKE_SHLIB_BUILD_FLAGS:STRING=-shared //Flag used for building shared library objects. CMAKE_SHLIB_CFLAGS:STRING=-fPIC //Libraries used by LD for shared libraries. CMAKE_SHLIB_LD_LIBS:STRING= //Flags used to link a shared library. CMAKE_SHLIB_LINK_FLAGS:STRING=-rdynamic //Flag used to specify run-time search paths. CMAKE_SHLIB_RUNTIME_FLAG:STRING=-Wl,-rpath, //If null, each runtime path is a separate option. Otherwise, they // are all joined, separated by this. CMAKE_SHLIB_RUNTIME_SEP:STRING=: //Shared library suffix. CMAKE_SHLIB_SUFFIX:STRING=.so //If set, runtime paths are not added when using shared libraries. // CMAKE_SKIP_RPATH:BOOL=OFF //CXX template flags used by compiler. CMAKE_TEMPLATE_FLAGS:STRING= //Thread library used. CMAKE_THREAD_LIBS:STRING=-lpthread //Use the pthreads library. CMAKE_USE_PTHREADS:BOOL=ON //Use sproc libs. CMAKE_USE_SPROC:BOOL=OFF //is this system big endian CMAKE_WORDS_BIGENDIAN:BOOL=OFF //X11 extra flags. CMAKE_X_CFLAGS:STRING= -I/usr/X11R6/include //Libraries and options used in X11 programs. CMAKE_X_LIBS:STRING= -lSM -lICE -L/usr/X11R6/lib -lX11 -lXext //If you have Dart installed, where is it located? DART_ROOT:PATH=NOTFOUND //Single output directory for building all executables. EXECUTABLE_OUTPUT_PATH:PATH= //Value Computed by CMake ITKPNG_BINARY_DIR:STATIC=/home/mmutz/ITK/build/Utilities/png //Value Computed by CMake ITKPNG_SOURCE_DIR:STATIC=/home/mmutz/ITK/Insight/Utilities/png //Value Computed by CMake ITKZLIB_BINARY_DIR:STATIC=/home/mmutz/ITK/build/Utilities/zlib //Value Computed by CMake ITKZLIB_SOURCE_DIR:STATIC=/home/mmutz/ITK/Insight/Utilities/zlib //Value Computed by CMake ITK_BINARY_DIR:STATIC=/home/mmutz/ITK/build //What is the path where the file ITKData.readme can be found ITK_DATA_ROOT:PATH=/home/mmutz/ITK/Insight/Testing/Data //Value Computed by CMake ITK_SOURCE_DIR:STATIC=/home/mmutz/ITK/Insight //Use the system's version of the standard C++ library (STL and // streams). If 'OFF', ITK will build against a supplied version // of the standard library from SGI. On SGI systems, this should // be set to 'OFF'. ITK_USE_SYSTEM_STDLIB:BOOL=ON //Build Tcl wrapper support. ITK_WRAP_TCL:BOOL=OFF //Single output directory for building all libraries. LIBRARY_OUTPUT_PATH:PATH= //Use FLTK (The Fast Light Toolkit) for GUI (some examples need // this) USE_FLTK:BOOL=OFF //Use VTK (The Visualization Toolkit) (some examples need this) // USE_VTK:BOOL=OFF //What is the path where the file avfCROP.1023c.raw can be found // VW_RAW_DATA_PATH:PATH=NOTFOUND ######################## # INTERNAL cache entries ######################## //Advanced flag for variable: BUILD_FEM_MESH_EXAMPLE BUILD_FEM_MESH_EXAMPLE-ADVANCED:INTERNAL=1 //Path to an executable BiasCorrector:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable BiasFieldEstimator:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable BiasImageGenerator:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable BrainStripValidationApp:INTERNAL=/home/mmutz/ITK/build/Examples/IBSRValidation/AtlasSegmentation //What flags are required by the c++ compiler to make it ansi. CMAKE_ANSI_CFLAGS:INTERNAL= //Advanced flag for variable: CMAKE_ANSI_CFLAGS CMAKE_ANSI_CFLAGS-ADVANCED:INTERNAL=1 //What flags are required by the c++ compiler to make it ansi. CMAKE_ANSI_CXXFLAGS:INTERNAL= //Advanced flag for variable: CMAKE_ANSI_CXXFLAGS CMAKE_ANSI_CXXFLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_AR CMAKE_AR-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_AR_ARGS CMAKE_AR_ARGS-ADVANCED:INTERNAL=1 //This is the directory where this CMakeCahe.txt was created CMAKE_CACHEFILE_DIR:INTERNAL=/home/mmutz/ITK/build //Major version of cmake used to create the current loaded cache // CMAKE_CACHE_MAJOR_VERSION:INTERNAL=1 //Minor version of cmake used to create the current loaded cache // CMAKE_CACHE_MINOR_VERSION:INTERNAL=2 //Path to CMake executable. CMAKE_COMMAND:INTERNAL=/home/mmutz/CMake-1.2/Source/cmake //Is the compile GNU C++. CMAKE_COMPILER_IS_GNUCXX:INTERNAL=1 //Advanced flag for variable: CMAKE_COMPILER_IS_GNUCXX CMAKE_COMPILER_IS_GNUCXX-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_CXX_COMPILER CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_C_COMPILER CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_DL_LIBS CMAKE_DL_LIBS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_EXECUTABLE_SUFFIX CMAKE_EXECUTABLE_SUFFIX-ADVANCED:INTERNAL=1 //Name of generator. CMAKE_GENERATOR:INTERNAL=Unix Makefiles //Is X11 around. CMAKE_HAS_X:INTERNAL=1 //Advanced flag for variable: CMAKE_HP_PTHREADS CMAKE_HP_PTHREADS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_LIB_EXT CMAKE_LIB_EXT-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_MAKE_PROGRAM CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_MODULE_BUILD_FLAGS CMAKE_MODULE_BUILD_FLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_MODULE_LINK_FLAGS CMAKE_MODULE_LINK_FLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_MODULE_SUFFIX CMAKE_MODULE_SUFFIX-ADVANCED:INTERNAL=1 //Does the compiler support ansi for scoping. CMAKE_NO_ANSI_FOR_SCOPE:INTERNAL= //Advanced flag for variable: CMAKE_NO_ANSI_FOR_SCOPE CMAKE_NO_ANSI_FOR_SCOPE-ADVANCED:INTERNAL=1 //Does the compiler support headers like iostream. CMAKE_NO_ANSI_STREAM_HEADERS:INTERNAL= //Advanced flag for variable: CMAKE_NO_ANSI_STREAM_HEADERS CMAKE_NO_ANSI_STREAM_HEADERS-ADVANCED:INTERNAL=1 //Does the compiler not support explicit template instantiation. // CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION:INTERNAL= //Advanced flag for variable: CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION // CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION-ADVANCED:INTERNAL=1 //Does the compiler support std::. CMAKE_NO_STD_NAMESPACE:INTERNAL= //Advanced flag for variable: CMAKE_NO_STD_NAMESPACE CMAKE_NO_STD_NAMESPACE-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_OBJECT_FILE_SUFFIX CMAKE_OBJECT_FILE_SUFFIX-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_RANLIB CMAKE_RANLIB-ADVANCED:INTERNAL=1 //Path to CMake installation. CMAKE_ROOT:INTERNAL=/home/mmutz/CMake-1.2 //Advanced flag for variable: CMAKE_SHLIB_BUILD_FLAGS CMAKE_SHLIB_BUILD_FLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_CFLAGS CMAKE_SHLIB_CFLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_LD_LIBS CMAKE_SHLIB_LD_LIBS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_LINK_FLAGS CMAKE_SHLIB_LINK_FLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_RUNTIME_FLAG CMAKE_SHLIB_RUNTIME_FLAG-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_RUNTIME_SEP CMAKE_SHLIB_RUNTIME_SEP-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_SHLIB_SUFFIX CMAKE_SHLIB_SUFFIX-ADVANCED:INTERNAL=1 //Size of char data type CMAKE_SIZEOF_CHAR:INTERNAL=1 //Size of double data type CMAKE_SIZEOF_DOUBLE:INTERNAL=8 //Size of float data type CMAKE_SIZEOF_FLOAT:INTERNAL=4 //Size of int data type CMAKE_SIZEOF_INT:INTERNAL=4 //Size of long data type CMAKE_SIZEOF_LONG:INTERNAL=4 //Size of short data type CMAKE_SIZEOF_SHORT:INTERNAL=2 //Size of void* data type CMAKE_SIZEOF_VOID_P:INTERNAL=4 //Advanced flag for variable: CMAKE_SKIP_RPATH CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_STATICLIB_SUFFIX CMAKE_STATICLIB_SUFFIX-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_TEMPLATE_FLAGS CMAKE_TEMPLATE_FLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_THREAD_LIBS CMAKE_THREAD_LIBS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_USE_PTHREADS CMAKE_USE_PTHREADS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_USE_SPROC CMAKE_USE_SPROC-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_USE_WIN32_THREADS CMAKE_USE_WIN32_THREADS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_WORDS_BIGENDIAN CMAKE_WORDS_BIGENDIAN-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_X_CFLAGS CMAKE_X_CFLAGS-ADVANCED:INTERNAL=1 //Advanced flag for variable: CMAKE_X_LIBS CMAKE_X_LIBS-ADVANCED:INTERNAL=1 //Path to an executable EnergyTablePlotter:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to a library FEM:INTERNAL=/home/mmutz/ITK/build/Code/Numerics/FEM //Path to an executable FEMImageRegEx:INTERNAL=/home/mmutz/ITK/build/Examples/FEM //Path to an executable FEMRead:INTERNAL=/home/mmutz/ITK/build/Examples/FEM //Path to an executable FEMTruss:INTERNAL=/home/mmutz/ITK/build/Examples/FEM //Whether a library is static, shared or module. FEM_LIBRARY_TYPE:INTERNAL=SHARED //Path to an executable FuzzyConnectedness:INTERNAL=/home/mmutz/ITK/build/Examples/FuzzyConnectedness //Path to an executable GaussianMinimumErrorClassifier:INTERNAL=/home/mmutz/ITK/build/Examples/GaussianMinimumErrorClassifier //Support for FEM HAS_FEM:INTERNAL=1 //meta image support HAS_METAIMAGE:INTERNAL=1 //no vtkFlWindowInteractor image support HAS_VTK_FLTK_WINDOW_INTERACTOR:INTERNAL=0 //Path to a library ITKBasicFilters:INTERNAL=/home/mmutz/ITK/build/Code/BasicFilters //Whether a library is static, shared or module. ITKBasicFilters_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library ITKCommon:INTERNAL=/home/mmutz/ITK/build/Code/Common //Whether a library is static, shared or module. ITKCommon_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library ITKIO:INTERNAL=/home/mmutz/ITK/build/Code/IO //Whether a library is static, shared or module. ITKIO_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library ITKNumerics:INTERNAL=/home/mmutz/ITK/build/Code/Numerics //Whether a library is static, shared or module. ITKNumerics_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library ITKSpatialObject:INTERNAL=/home/mmutz/ITK/build/Code/SpatialObject //Whether a library is static, shared or module. ITKSpatialObject_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library ITKStatistics:INTERNAL=/home/mmutz/ITK/build/Code/Numerics/Statistics //Whether a library is static, shared or module. ITKStatistics_LIBRARY_TYPE:INTERNAL=SHARED //Path to an executable ImageCorrector:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable IntensityHistogram3D:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable InterSliceIntensityCorrector:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to an executable MIValidationApp:INTERNAL=/home/mmutz/ITK/build/Examples/MIValidation //Path to a library MetaImageIO:INTERNAL=/home/mmutz/ITK/build/Auxiliary/MetaImage //Whether a library is static, shared or module. MetaImageIO_LIBRARY_TYPE:INTERNAL=SHARED //Path to an executable MultiResMIRegistration:INTERNAL=/home/mmutz/ITK/build/Examples/MultiResMIRegistration //Path to an executable RawImageReadWrite:INTERNAL=/home/mmutz/ITK/build/Examples/RawImageReadWrite //Path to an executable ShapeDetection:INTERNAL=/home/mmutz/ITK/build/Examples/ShapeDetection //Path to an executable SlabIdentifier:INTERNAL=/home/mmutz/ITK/build/Examples/MRIBiasCorrection //Path to a library VXLNumerics:INTERNAL=/home/mmutz/ITK/build/Code/Numerics/vxl //Whether a library is static, shared or module. VXLNumerics_LIBRARY_TYPE:INTERNAL=SHARED //Path to an executable itk2DSimpleLevelSetsExample:INTERNAL=/home/mmutz/ITK/build/Examples/SimpleLevelSetsExample //Path to an executable itk3DSimpleLevelSetsExample:INTERNAL=/home/mmutz/ITK/build/Examples/SimpleLevelSetsExample //Path to an executable itkAlgorithmsHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Algorithms //Path to an executable itkAlgorithmsTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Algorithms //Path to an executable itkAntiAliasBinaryImageFilterExample:INTERNAL=/home/mmutz/ITK/build/Examples/AntiAliasBinaryImageFilter //Path to an executable itkBasicFiltersHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/BasicFilters //Path to an executable itkBasicFiltersTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/BasicFilters //Path to an executable itkCommonHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Common //Path to an executable itkCommonTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Common //Path to an executable itkEllipsoidInteriorExteriorSpatialFunctionExample:INTERNAL=/home/mmutz/ITK/build/Examples/EllipsoidInteriorExteriorSpatialFunction //Path to an executable itkFEMTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Numerics/FEM //Path to an executable itkFileIOMetaImageExample:INTERNAL=/home/mmutz/ITK/build/Auxiliary/MetaImage //Path to an executable itkFloodFilledSpatialFunctionExample:INTERNAL=/home/mmutz/ITK/build/Examples/FloodFilledSpatialFunction //Path to an executable itkIOHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/IO //Path to an executable itkIOTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/IO //Path to an executable itkNumericsHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Numerics //Path to an executable itkNumericsTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Numerics //Path to an executable itkPrincipalAxesResampler:INTERNAL=/home/mmutz/ITK/build/Examples/PrincipalAxes //Path to an executable itkSampleDataGenerator:INTERNAL=/home/mmutz/ITK/build/Examples/AntiAliasBinaryImageFilter //Path to an executable itkSpatialObjectHeaderTest:INTERNAL=/home/mmutz/ITK/build/Testing/Code/SpatialObject //Path to an executable itkSpatialObjectTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/SpatialObject //Path to an executable itkStatisticsTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Numerics/Statistics //Path to an executable itkSymmetricEllipsoidInteriorExteriorSpatialFunctionExample:INTERNAL=/home/mmutz/ITK/build/Examples/SymmetricEllipsoidInteriorExteriorSpatialFunction //Path to an executable itkWSRawToPNG:INTERNAL=/home/mmutz/ITK/build/Examples/WatershedSegmentation //Path to an executable itkWatershedSegmentationExample:INTERNAL=/home/mmutz/ITK/build/Examples/WatershedSegmentation //Path to a library itkpng:INTERNAL=/home/mmutz/ITK/build/Utilities/png //Whether a library is static, shared or module. itkpng_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library itkzlib:INTERNAL=/home/mmutz/ITK/build/Utilities/zlib //Whether a library is static, shared or module. itkzlib_LIBRARY_TYPE:INTERNAL=SHARED //Path to a library param:INTERNAL=/home/mmutz/ITK/build/Examples/StreamedWatershedSegmentation/ParameterFileParser //Whether a library is static, shared or module. param_LIBRARY_TYPE:INTERNAL=SHARED //Path to an executable vnlTests:INTERNAL=/home/mmutz/ITK/build/Testing/Code/Numerics/vxl/vnl/tests --Boundary-00=_ieFI9KKh1SBTlEM-- From bahrahm@yahoo.com Mon Jul 1 15:18:35 2002 From: bahrahm@yahoo.com (Jisung Kim) Date: Mon, 1 Jul 2002 07:18:35 -0700 (PDT) Subject: Fwd: Re: [Insight-users] fatal error LNK1104: cannot open file "VXLNumerics.lib" Message-ID: <20020701141835.37413.qmail@web10104.mail.yahoo.com> --- Jisung Kim wrote: > Date: Mon, 1 Jul 2002 07:01:50 -0700 (PDT) > From: Jisung Kim > Subject: Re: [Insight-users] fatal error LNK1104: > cannot open file "VXLNumerics.lib" > To: Zein Salah > > Hi Zein. > > To build all the examples in ITK, you should have > turn > on some build options in CMake (in Windows, > CMakeSetup) to build necassary libraries and > utilities. > > The followings are neccessary. > > //Build the unsupported directory > BUILD_AUXILIARY:BOOL=ON > > //Build the examples directory > BUILD_EXAMPLES:BOOL=ON > > //Build the FEM Code > BUILD_FEM_CODE:BOOL=ON > > //Build the FEM-Mesh example > BUILD_FEM_MESH_EXAMPLE:BOOL=OFF > > //Build the FltkImageViewer Library > BUILD_FLTKIMAGEVIEWER:BOOL=ON > > //Build the MetaImage Library > BUILD_METAIMAGE:BOOL=ON > > Also you need to install FLTK and VTK, and turn on > USE_FLTK and USE_VTK build options. I couldn't find > these options in your CMakeCache.txt file either. > Without them, you wouldn't see some of the above > options in CMakeSetup's "CacheValue" list. > > After you got every options turned on and libraries > installed, you should build ITK by openin the > ITK.dsw > file with VC++. > > You may want to look at my step-by-step installation > instruction at > http://caddlab.rad.unc.edu/publications/Tutorials/Summer-02/itk_windows_installation.pdf > > Thanks, > > Jisung. > > --- Zein Salah wrote: > > hellow Jisung, > > > > I have attachted the file with this message. > > > > thanks, > > Zein > > > > > > ----- Original Message ----- > > From: "Jisung Kim" > > To: "Zein Salah" ; > > > > Sent: Monday, July 01, 2002 3:07 PM > > Subject: Re: [Insight-users] fatal error LNK1104: > > cannot open file > > "VXLNumerics.lib" > > > > > > > Hellow Zein. > > > > > > Could you post your CMakeCache.txt file to this > > list? > > > You can find the file at the root directory of > you > > ITK > > > binary directory where you can also find ITK.dsw > > file. > > > > > > Thanks, > > > > > > Jisung Kim. > > > > > > --- Zein Salah > > wrote: > > > > helow all, > > > > > > > > I have used Cmake to create the ITK workspace. > I > > had > > > > two problems: > > > > 1. not all examples in the example directory > > were. > > > > 2. When I build any example in VC++ , I got > > always > > > > the following error > > > > > > > > LINK : fatal error LNK1104: cannot open file > > > > "VXLNumerics.lib" > > > > > > > > I saw in a message to Samuel > > > > > > > > Please rerun CMake and set > > > > > > > > BUILD_SHARED_LIBS="OFF" > > > > > > > > > > > > In fact I did not find BUILD_SHARED_LIBS at > all > > > > ?!?!?!?!? > > > > > > > > Thanks, > > > > > > > > zein > > > > > > > > > > > > > ===== > > > Jisung Kim > > > bahrahm@yahoo.com > > > 106 Mason Farm Rd. > > > 129 Radiology Research Lab., CB# 7515 > > > Univ. of North Carolina at Chapel Hill > > > Chapel Hill, NC 27599-7515 > > > > > > > __________________________________________________ > > > Do You Yahoo!? > > > Yahoo! - Official partner of 2002 FIFA World Cup > > > http://fifaworldcup.yahoo.com > > > # This is the CMakeCache file. > > # For build in directory: d:/InsightBeta > > # You can edit this file to change values found > and > > used by cmake. > > # If you do not want to change any of the values, > > simply exit the editor. > > # If you do want to change a value, simply edit, > > save, and exit the editor. > > # The syntax for the file is as follows: > > # KEY:TYPE=VALUE > > # KEY is the name of a varible in the cache. > > # TYPE is a hint to GUI's for the type of VALUE, > DO > > NOT EDIT TYPE!. > > # VALUE is the current value for the KEY. > > > > ######################## > > # EXTERNAL cache entries > > ######################## > > > > //Build the unsupported directory > > BUILD_AUXILIARY:BOOL=OFF > > > > //Build the examples directory > > BUILD_EXAMPLES:BOOL=ON > > > > //Build the testing tree. > > BUILD_TESTING:BOOL=ON > > > > //Build the watershed segmentation > > BUILD_WATERSHED_SEGMENTATION:BOOL=ON > > > > //Name of C++ compiler used. > > CMAKE_CXX_COMPILER:STRING=cl > > > > //Flags used by the compiler during all build > types, > > /GX /GR are > > // for exceptions and rtti in VC++, /Zm1000 > > increases the compiler's > > // memory allocation to support ANSI C++/stdlib > > CMAKE_CXX_FLAGS:STRING=/W3 /Zm1000 /GX /GR > > > > //Flags used by the compiler during debug builds > > CMAKE_CXX_FLAGS_DEBUG:STRING=/MDd /Zi /Od /GZ > > > > //Flags used by the compiler during release > minsize > > builds > > CMAKE_CXX_FLAGS_MINSIZEREL:STRING=/MD /O1 > > > > //Flags used by the compiler during release builds > > (/MD /Ob1 /Oi > > // /Ot /Oy /Gs will produce slightly less > optimized > > but smaller > > // files) > > CMAKE_CXX_FLAGS_RELEASE:STRING=/MD /O2 > > > > //Flags used by the compiler during Release with > > Debug Info builds > > // > > CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 > > > > //Extra flags added to the link line for creation > of > > exe and dlls. > > // > > CMAKE_EXTRA_LINK_FLAGS:STRING=/STACK:10000000 > > > > //Program used to build from dsp files. > > CMAKE_MAKE_PROGRAM:STRING=msdev > > > > //Use the win32 thread library > > CMAKE_USE_WIN32_THREADS:BOOL=1 > > > > //If you have Dart installed, where is it located? > > DART_ROOT:PATH=NOTFOUND > > > > //Single output directory for building all > > executables. > > EXECUTABLE_OUTPUT_PATH:PATH= > > > > //Select whether Finite Elements Modeling (FEM) > > classes will be > > // derived from itk::LightObject and use > > SmartPointers or not. > > // If you select to use SmartPointers, be sure to > > define FEM_USE_SMART_POINTERS > > // macro before including the FEM classes. > > FEM_USE_SMART_POINTERS:BOOL=OFF > > > > //Select whether the visualization functions will > be > > built for > > // Finite Elements Modeling (FEM) classes or not. > If > > you select > > // to build visualization functions, be sure to > > define FEM_BUILD_VISUALIZATION > > // macro before including the FEM classes. > > FEM_VISUALIZATION:BOOL=OFF > > > > //Value Computed by CMake > > > ITKPNG_BINARY_DIR:STATIC=D:/InsightBeta/Utilities/png > > > > //Value Computed by CMake > > ITKPNG_SOURCE_DIR:STATIC=D:/Insight/Utilities/png > > > > //Value Computed by CMake > > > ITKZLIB_BINARY_DIR:STATIC=D:/InsightBeta/Utilities/zlib > > > > //Value Computed by CMake > > > ITKZLIB_SOURCE_DIR:STATIC=D:/Insight/Utilities/zlib > > > > //Value Computed by CMake > > ITK_BINARY_DIR:STATIC=D:/InsightBeta > > > > //Value Computed by CMake > > ITK_SOURCE_DIR:STATIC=D:/Insight > > > > //Use the system's version of the standard C++ > > library (STL and > > // streams). If 'OFF', ITK will build against a > > supplied version > > // of the standard library from SGI. On SGI > systems, > > this should > > // be set to 'OFF'. > > ITK_USE_SYSTEM_STDLIB:BOOL=ON > > > > //Build Tcl wrapper support. > > ITK_WRAP_TCL:BOOL=OFF > > > > //Single output directory for building all > > libraries. > > LIBRARY_OUTPUT_PATH:PATH= > > > > //What is the path where the file UseVTK.cmake can > > be found > > VTK_BINARY_PATH:PATH=NOTFOUND > > > > //What is the path where the file > > include/vtk/UseVTK.cmake can > > // be found > > VTK_INSTALL_PATH:PATH=NOTFOUND > > > > //What is the path where the file > avfCROP.1023c.raw > > can be found > > // > > VW_RAW_DATA_PATH:PATH=NOTFOUND > > > > > > ######################## > > # INTERNAL cache entries > > ######################## > > > > //This is the directory where this CMakeCahe.txt > was > > created > > CMAKE_CACHEFILE_DIR:INTERNAL=d:/InsightBeta > > //Major version of cmake used to create the > current > > loaded cache > > // > > CMAKE_CACHE_MAJOR_VERSION:INTERNAL=1 > > //Minor version of cmake used to create the > current > > loaded cache > > // > > CMAKE_CACHE_MINOR_VERSION:INTERNAL=2 > > //Path to CMake executable. > > CMAKE_COMMAND:INTERNAL="C:/Program > > Files/CMake/bin/cmake.exe" > > //Advanced flag for variable: CMAKE_CXX_COMPILER > > CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 > > //Advanced flag for variable: > CMAKE_CXX_FLAGS_DEBUG > > CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 > > //Advanced flag for variable: > > CMAKE_CXX_FLAGS_MINSIZEREL > > CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 > > //Advanced flag for variable: > > CMAKE_CXX_FLAGS_RELEASE > > CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 > > //Advanced flag for variable: > > CMAKE_CXX_FLAGS_RELWITHDEBINFO > > CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 > > //Advanced flag for variable: > CMAKE_EXTRA_LINK_FLAGS > > CMAKE_EXTRA_LINK_FLAGS-ADVANCED:INTERNAL=1 > > //Name of generator. > > CMAKE_GENERATOR:INTERNAL=Visual Studio 6 > > //Advanced flag for variable: CMAKE_MAKE_PROGRAM > > CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 > > //Path to CMake installation. > > CMAKE_ROOT:INTERNAL=C:/Program Files/CMake > > //Size of char data type > > CMAKE_SIZEOF_CHAR:INTERNAL=1 > > //Size of double data type > > CMAKE_SIZEOF_DOUBLE:INTERNAL=8 > > //Size of float data type > > CMAKE_SIZEOF_FLOAT:INTERNAL=4 > > //Size of int data type > > CMAKE_SIZEOF_INT:INTERNAL=4 > > //Size of long data type > > CMAKE_SIZEOF_LONG:INTERNAL=4 > > //Size of short data type > > CMAKE_SIZEOF_SHORT:INTERNAL=2 > > //Size of void* data type > > CMAKE_SIZEOF_VOID_P:INTERNAL=4 > > //Advanced flag for variable: > > CMAKE_USE_WIN32_THREADS > > CMAKE_USE_WIN32_THREADS-ADVANCED:INTERNAL=1 > > > === message truncated === > > > ===== > Jisung Kim > bahrahm@yahoo.com > 106 Mason Farm Rd. > 129 Radiology Research Lab., CB# 7515 > Univ. of North Carolina at Chapel Hill > Chapel Hill, NC 27599-7515 > > __________________________________________________ > Do You Yahoo!? > Yahoo! - Official partner of 2002 FIFA World Cup > http://fifaworldcup.yahoo.com > ===== Jisung Kim bahrahm@yahoo.com 106 Mason Farm Rd. 129 Radiology Research Lab., CB# 7515 Univ. of North Carolina at Chapel Hill Chapel Hill, NC 27599-7515 __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From bahrahm@yahoo.com Mon Jul 1 15:30:56 2002 From: bahrahm@yahoo.com (Jisung Kim) Date: Mon, 1 Jul 2002 07:30:56 -0700 (PDT) Subject: [Insight-users] Question: Problem with ITKSourceUnixBeta2.tar.gz In-Reply-To: <200207011247.IAA10140@lhc.nlm.nih.gov> Message-ID: <20020701143056.26553.qmail@web10105.mail.yahoo.com> Hello. I just download ITKSourceUnixBeta2.tgz file from the ITK Website. I untar it with "xvzf" options. I didn't have the same problems. I am using Redhat Linux. I used Mozilla Web-browser to download the tar file. My suggestion is to use other broswer or ftp client program to download the archive file. Some browser or fttp client programs might have problems with downloading large binary files. The ftp URL for the file is ftp://public.kitware.com/pub/itk/PublicBeta/ITKSourceUnixBeta2.tgz If you have problems, please post a message again. Thank you, Jisung Kim. --- Linglan Edwards wrote: > > I just downloaded ITKSourceUnixBeta2.tar.gz, when I > tried to un-tar it, I got > the following error message: > > ...... > x > Insight/Code/Numerics/FEM/itkFEMLoadImplementationGenericBodyLoad.cxx, > 3052 > bytes, 6 tape blocks > tar: directory checksum error > > Does anybody know what the problem is? > > Thanks, > > Linglan Edwards > > ============================ > Linglan Edwards, Ph.D. > Senior Software Engineer > National Library of Medicine > Phone: (301) 435-3147 > Email: linglan@nlm.nih.gov > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users ===== Jisung Kim bahrahm@yahoo.com 106 Mason Farm Rd. 129 Radiology Research Lab., CB# 7515 Univ. of North Carolina at Chapel Hill Chapel Hill, NC 27599-7515 __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From srodrigu@gbt.tfo.upm.es Tue Jul 2 13:04:00 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Tue, 2 Jul 2002 14:04:00 +0200 Subject: [Insight-users] Problems with Watershed class Message-ID: <002901c221c0$8e5640d0$640a048a@sisifo> This is a multi-part message in MIME format. ------=_NextPart_000_0026_01C221D1.50E91810 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello everybody.=20 I'm developing an example based in GaussianFilter example in order to = segmentate a PNG Image with the watershed algorithm. In the Base class I = have defined a member of the WatershedImageFilter class and the = estructure is the same of the Gaussian Filter example's. I have a linking problem the error lines are this: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -------------------Configuration: Segmentation - Win32 = Debug-------------------- Linking... liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already = defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall = itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long = __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmentatio n.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmenta tion.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivalencyT able@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@V= Indent@3@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in = Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall = itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@watersh ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)= already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@2@A BVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje ct@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already = defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall = itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long = __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segment ation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segm entation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivale ncyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in = Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall = itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@wat ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3= @@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject @2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV Object@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already = defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall = itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmenta tion.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segme ntation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivalen cyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std= @@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in = Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall = itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@wate rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@= @Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@ 2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO bject@2@ABVEventObject@2@@Z) already defined in Segmentation.obj LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other = libs; use /NODEFAULTLIB:library Debug/Segmentation.exe : fatal error LNK1169: one or more multiply = defined symbols found Error executing link.exe. Segmentation.exe - 37 error(s), 1 warning(s) =20 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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 I'm using the Beta Release and MSVC 6.0. Could anybody Know what is hapening and help me? Thanks in advance. Samuel ------=_NextPart_000_0026_01C221D1.50E91810 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello everybody.
 
I'm developing an example based in = GaussianFilter=20 example in order to segmentate a PNG Image with the watershed = algorithm. In=20 the Base class I have defined a member of the WatershedImageFilter = class=20 and the estructure is the same of the Gaussian Filter=20 example's.
 
I have a linking problem the error = lines are=20 this:
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 
-------------------Configuration: = Segmentation -=20 Win32 = Debug--------------------
Linking...
liSegmentationConsole.obj :=20 error LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in Segmentatio
n.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in Segmenta
tion.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@OneWayEquivalenc= yT
able@watershed@itk@@MBEXAAV?$basic_ostream@DU= ?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned=20 long,unsigned long)" (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@Equivalenc= yTable@watersh
ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : error = LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObj= ect@2@A
BVEventObject@2@@Z) already = defined in=20 Segmentation.obj
liSegmentationConsole.obj : error LNK2005: "public: = virtual=20 void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje<= BR>ct@2@ABVEventObject@2@@Z) = already=20 defined in Segmentation.obj
liSegmentationConsoleBase.obj : error = LNK2005:=20 "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned=20 long,unsigned long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in Segment
ation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in Segm
entation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@OneWayEquivalencyTable@watershed@itk@@MBEXAAV?$basic_os= tream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned=20 long,unsigned long)" (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@EquivalencyTab= le@wat
ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@= std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>
@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV
Object@2@ABVEventObject@2@@Z= )=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in Segmenta
tion.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in Segme
ntation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@OneWayEquivalen=
cyTable@watershed@itk@@MBEXAAV?$basic_ostr= eam@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned=20 long,unsigned long)" (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> > = &,class=20 itk::Indent)const " (?PrintSelf@EquivalencyTa= ble@wate
rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@st= d@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>@
2@ABVEventObject@2@@Z) already = defined=20 in Segmentation.obj
liSegmentationConsoleGUI.obj : error LNK2005: = "public:=20 virtual void __thiscall = itk::WatershedMiniPipelineProgressCommand::Execute(class=20 itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO
bject@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
LINK : warning LNK4098: = defaultlib=20 "MSVCRT" conflicts with use of other libs; use=20 /NODEFAULTLIB:library
Debug/Segmentation.exe : fatal error LNK1169: = one or=20 more multiply defined symbols found
Error executing = link.exe.
 
Segmentation.exe - 37 error(s), 1=20 warning(s)
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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
 
  I'm using the Beta Release = and MSVC=20 6.0.
 
Could anybody Know what is hapening and = help=20 me?
 
Thanks in advance.
 
Samuel
 
 
------=_NextPart_000_0026_01C221D1.50E91810-- From hanssen@caesar.de Tue Jul 2 14:16:32 2002 From: hanssen@caesar.de (Nils Hanssen) Date: Tue, 2 Jul 2002 15:16:32 +0200 Subject: [Insight-users] Problems with Watershed class In-Reply-To: <002901c221c0$8e5640d0$640a048a@sisifo> Message-ID: <000801c221ca$afcb6c90$0607010a@ssn4006> This is a multi-part message in MIME format. ------=_NextPart_000_0009_01C221DB.73543C90 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit Hi Samuel, I have exactly the same double symbols when linking my project with the WatershedImageFilter. It's not the clean way, but until the problem is discovered, you can turn these errors into warnings by including the "/FORCE:MULTIPLE" in the linking options of MSVC. Regards, Nils -----Original Message----- From: insight-users-admin@public.kitware.com [mailto:insight-users-admin@public.kitware.com]On Behalf Of Samuel Rodríguez Bescos Sent: Tuesday, July 02, 2002 2:04 PM To: insight-users@public.kitware.com Subject: [Insight-users] Problems with Watershed class Hello everybody. I'm developing an example based in GaussianFilter example in order to segmentate a PNG Image with the watershed algorithm. In the Base class I have defined a member of the WatershedImageFilter class and the estructure is the same of the Gaussian Filter example's. I have a linking problem the error lines are this: ================== -------------------Configuration: Segmentation - Win32 Debug-------------------- Linking... liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentatio n.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmenta tion.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivalencyT able@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VInd ent@3@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@watersh ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@2@A BVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje ct@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segment ation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segm entation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivale ncyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@ VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@wat ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z ) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject @2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV Object@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmenta tion.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segme ntation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivalen cyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@V Indent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@wate rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@ 2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO bject@2@ABVEventObject@2@@Z) already defined in Segmentation.obj LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library Debug/Segmentation.exe : fatal error LNK1169: one or more multiply defined symbols found Error executing link.exe. Segmentation.exe - 37 error(s), 1 warning(s) ===================END================================= I'm using the Beta Release and MSVC 6.0. Could anybody Know what is hapening and help me? Thanks in advance. Samuel ------=_NextPart_000_0009_01C221DB.73543C90 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi=20 Samuel,
 
I have=20 exactly the same double symbols when linking my project with the=20 WatershedImageFilter.
It's not the clean way, but until = the problem is=20 discovered, you can turn these errors into warnings by including the=20 "/FORCE:MULTIPLE" in the linking options of MSVC.
 
Regards,
Nils
-----Original Message-----
From:=20 insight-users-admin@public.kitware.com=20 [mailto:insight-users-admin@public.kitware.com]On Behalf Of = Samuel=20 Rodr=EDguez Bescos
Sent: Tuesday, July 02, 2002 2:04 = PM
To:=20 insight-users@public.kitware.com
Subject: [Insight-users] = Problems=20 with Watershed class

Hello everybody.
 
I'm developing an example based in = GaussianFilter=20 example in order to segmentate a PNG Image with the watershed = algorithm.=20 In the Base class I have defined a member of the = WatershedImageFilter=20 class and the estructure is the same of the Gaussian Filter=20 example's.
 
I have a linking problem the error = lines are=20 this:
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 
-------------------Configuration: = Segmentation -=20 Win32 = Debug--------------------
Linking...
liSegmentationConsole.obj :=20 error LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z
)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in Segmentatio
n.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in Segmenta
tion.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalenc= yT
able@watershed@itk@@MBEXAAV?$basic_ostream@DU= ?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@Equivalenc= yTable@watersh
ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObj= ect@2@A
BVEventObject@2@@Z) already = defined in=20 Segmentation.obj
liSegmentationConsole.obj : error LNK2005: = "public:=20 virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje<= BR>ct@2@ABVEventObject@2@@Z) = already=20 defined in Segmentation.obj
liSegmentationConsoleBase.obj : error = LNK2005:=20 "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned=20 long,unsigned long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in = Segment
ation.obj
liSegmentationConsoleBase.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in = Segm
entation.obj
liSegmentationConsoleBase.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalencyTable@watershed@itk@@MBEXAAV?$basic_os= tream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@EquivalencyTab= le@wat
ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@= std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>
@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV
Object@2@ABVEventObject@2@@Z= )=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in = Segmenta
tion.obj
liSegmentationConsoleGUI.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in = Segme
ntation.obj
liSegmentationConsoleGUI.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalen=
cyTable@watershed@itk@@MBEXAAV?$basic_ostr= eam@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@EquivalencyTa= ble@wate
rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@st= d@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>@
2@ABVEventObject@2@@Z) = already defined=20 in Segmentation.obj
liSegmentationConsoleGUI.obj : error LNK2005: = "public:=20 virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO
bject@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
LINK : warning LNK4098: = defaultlib=20 "MSVCRT" conflicts with use of other libs; use=20 /NODEFAULTLIB:library
Debug/Segmentation.exe : fatal error LNK1169: = one or=20 more multiply defined symbols found
Error executing = link.exe.
 
Segmentation.exe - 37 error(s), 1=20 warning(s)
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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
 
  I'm using the Beta = Release and MSVC=20 6.0.
 
Could anybody Know what is hapening = and help=20 me?
 
Thanks in advance.
 
Samuel
 
 
------=_NextPart_000_0009_01C221DB.73543C90-- From srodrigu@gbt.tfo.upm.es Tue Jul 2 16:21:06 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Tue, 2 Jul 2002 17:21:06 +0200 Subject: [Insight-users] Problems with Watershed class References: <000801c221ca$afcb6c90$0607010a@ssn4006> Message-ID: <000801c221dc$169e4cb0$640a048a@sisifo> This is a multi-part message in MIME format. ------=_NextPart_000_0005_01C221EC.D9C6D440 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Thanks Nils for your help. It runs OK now with warning instead errors. Thank again, Samuel ----- Original Message -----=20 From: Nils Hanssen=20 To: 'Samuel Rodr=EDguez Bescos' ; insight-users@public.kitware.com=20 Sent: Tuesday, July 02, 2002 3:16 PM Subject: RE: [Insight-users] Problems with Watershed class Hi Samuel, I have exactly the same double symbols when linking my project with = the WatershedImageFilter. It's not the clean way, but until the problem is discovered, you can = turn these errors into warnings by including the "/FORCE:MULTIPLE" in = the linking options of MSVC.=20 Regards, Nils -----Original Message----- From: insight-users-admin@public.kitware.com = [mailto:insight-users-admin@public.kitware.com]On Behalf Of Samuel = Rodr=EDguez Bescos Sent: Tuesday, July 02, 2002 2:04 PM To: insight-users@public.kitware.com Subject: [Insight-users] Problems with Watershed class Hello everybody.=20 I'm developing an example based in GaussianFilter example in order = to segmentate a PNG Image with the watershed algorithm. In the Base = class I have defined a member of the WatershedImageFilter class and the = estructure is the same of the Gaussian Filter example's. I have a linking problem the error lines are this: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -------------------Configuration: Segmentation - Win32 = Debug-------------------- Linking... liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall = itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already = defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall = itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long = __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmentatio n.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmenta tion.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivalencyT = able@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@V= Indent@3@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall = itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in = Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: void __thiscall = itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "protected: virtual void = __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@watersh = ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)= already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@2@A BVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsole.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje ct@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool = __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned = long,unsigned long)" = (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined = in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void = __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned = long __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segment ation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual = void __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segm entation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual = void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivale = ncyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: bool = __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined = in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: void = __thiscall itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned = long __thiscall = itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " = (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual = void __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual = void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@wat = ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3= @@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject @2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV Object@2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool = __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned = long,unsigned long)" = (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined = in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void = __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" = (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined = in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall = itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const " = (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmenta tion.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual = void __thiscall = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segme ntation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual = void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@OneWayEquivalen = cyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std= @@VIndent@3@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: bool = __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned = long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined = in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: void = __thiscall itk::watershed::EquivalencyTable::Flatten(void)" = (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in = Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned = int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual = void __thiscall = itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) = already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual = void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class = std::basic_ostream > &,class = itk::Indent)const " (?PrintSelf@EquivalencyTable@wate = rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@= @Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@ 2@ABVEventObject@2@@Z) already defined in Segmentation.obj liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class = itk::Object const *,class itk::EventObject const &)" = (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO bject@2@ABVEventObject@2@@Z) already defined in Segmentation.obj LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of = other libs; use /NODEFAULTLIB:library Debug/Segmentation.exe : fatal error LNK1169: one or more multiply = defined symbols found Error executing link.exe. Segmentation.exe - 37 error(s), 1 warning(s) =20 = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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 I'm using the Beta Release and MSVC 6.0. Could anybody Know what is hapening and help me? Thanks in advance. Samuel ------=_NextPart_000_0005_01C221EC.D9C6D440 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Thanks Nils for your help.
 
It runs OK now with warning instead=20 errors.
 
Thank again,
 
Samuel
 
 
----- Original Message -----
From:=20
Nils = Hanssen=20
To: 'Samuel Rodr=EDguez = Bescos' ; insight-users@public.kit= ware.com=20
Sent: Tuesday, July 02, 2002 = 3:16=20 PM
Subject: RE: [Insight-users] = Problems=20 with Watershed class

Hi=20 Samuel,
 
I=20 have exactly the same double symbols when linking my project with the=20 WatershedImageFilter.
It's not the=20 clean way, but until the problem is discovered, you can turn these = errors into=20 warnings by including the "/FORCE:MULTIPLE" in the linking options of = MSVC.=20
 
Regards,
Nils
-----Original Message-----
From: insight-users-admi= n@public.kitware.com=20 [mailto:insight-users-admin@public.kitware.com]On Behalf Of = Samuel=20 Rodr=EDguez Bescos
Sent: Tuesday, July 02, 2002 2:04=20 PM
To: insight-users@public.kitware.com
Subject: = [Insight-users] Problems with Watershed class

Hello everybody.
 
I'm developing an example based in=20 GaussianFilter example in order to segmentate a PNG Image with = the=20 watershed algorithm. In the Base class I have defined a member = of the=20 WatershedImageFilter class and the estructure is the same of = the=20 Gaussian Filter example's.
 
I have a linking problem the error = lines are=20 this:
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 
-------------------Configuration: = Segmentation=20 - Win32 = Debug--------------------
Linking...
liSegmentationConsole.obj=20 : error LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)"=20 (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in Segmentatio
n.obj
liSegmentationConsole.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in Segmenta
tion.obj
liSegmentationConsole.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalenc= yT
able@watershed@itk@@MBEXAAV?$basic_ostream@DU= ?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const = " (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@Equivalenc= yTable@watersh

ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsole.obj : = error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObj= ect@2@A
BVEventObject@2@@Z) already = defined in=20 Segmentation.obj
liSegmentationConsole.obj : error LNK2005: = "public:=20 virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje<= BR>ct@2@ABVEventObject@2@@Z) = already=20 defined in Segmentation.obj
liSegmentationConsoleBase.obj : error = LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)"=20 (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in = Segment
ation.obj
liSegmentationConsoleBase.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in = Segm
entation.obj
liSegmentationConsoleBase.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalencyTable@watershed@itk@@MBEXAAV?$basic_os= tream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const = " (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@EquivalencyTab= le@wat

ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@= std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>
@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleBase.obj = : error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV
Object@2@ABVEventObject@2@@Z= )=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned = long)"=20 (?Add= @OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: void __thiscall=20 itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Fl= atten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned = int)const "=20 (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z)= =20 already defined in = Segmenta
tion.obj
liSegmentationConsoleGUI.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 = itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@it= k@@MAEXXZ)=20 already defined in = Segme
ntation.obj
liSegmentationConsoleGUI.obj :=20 error LNK2005: "protected: virtual void __thiscall=20 itk::watershed::OneWayEquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@OneWayEquivalen=
cyTable@watershed@itk@@MBEXAAV?$basic_ostr= eam@DU?$char_traits@D@std@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: bool __thiscall=20 itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" = (?Add@Equiv= alencyTable@watershed@itk@@QAE_NKK@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: void __thiscall=20 itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@= EquivalencyTable@watershed@itk@@QAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: unsigned long __thiscall=20 itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const = " (= ?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "protected: virtual void __thiscall=20 itk::watershed::EquivalencyTable::PrintSelf(class=20 std::basic_ostream<char,struct std::char_traits<char> >=20 &,class itk::Indent)const " (?PrintSelf@EquivalencyTa= ble@wate

rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@st= d@@@std@@VIndent@3@@Z)=20 already defined in Segmentation.obj
liSegmentationConsoleGUI.obj = : error=20 LNK2005: "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = *,class=20 itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject<= /A>@
2@ABVEventObject@2@@Z) = already=20 defined in Segmentation.obj
liSegmentationConsoleGUI.obj : error = LNK2005:=20 "public: virtual void __thiscall=20 itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object = const=20 *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO
bject@2@ABVEventObject@2@@Z)=20 already defined in Segmentation.obj
LINK : warning LNK4098: = defaultlib=20 "MSVCRT" conflicts with use of other libs; use=20 /NODEFAULTLIB:library
Debug/Segmentation.exe : fatal error = LNK1169: one=20 or more multiply defined symbols found
Error executing=20 link.exe.
 
Segmentation.exe - 37 error(s), 1=20 warning(s)
 
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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
 
  I'm using the Beta = Release and MSVC=20 6.0.
 
Could anybody Know what is hapening = and help=20 me?
 
Thanks in advance.
 
Samuel
 
 
------=_NextPart_000_0005_01C221EC.D9C6D440-- From salah@gris.uni-tuebingen.de Wed Jul 3 15:55:09 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Wed, 3 Jul 2002 16:55:09 +0200 Subject: [Insight-users] Volume data viewer?? Message-ID: <00f801c222a1$a08cb450$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_00F5_01C222B2.64099D70 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello everybody, Can anybody help me! I want to build a simple viewer for volume data, = e.g. raw files. The viewer is to be used with ITK.=20 Thanks, Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_00F5_01C222B2.64099D70 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello everybody,
 
Can anybody help me! I want to build a = simple=20 viewer for volume data, e.g. raw files. The viewer is to be used with = ITK.=20
 
Thanks,
 
Zein
 
 
------=_NextPart_000_00F5_01C222B2.64099D70-- From hanssen@caesar.de Wed Jul 3 16:12:04 2002 From: hanssen@caesar.de (Nils Hanssen) Date: Wed, 3 Jul 2002 17:12:04 +0200 Subject: [Insight-users] Volume data viewer?? In-Reply-To: <00f801c222a1$a08cb450$aeb00286@wsigris.unituebingen.de> Message-ID: <000e01c222a3$fdf6d1a0$0607010a@ssn4006> This is a multi-part message in MIME format. ------=_NextPart_000_000F_01C222B4.C17FA1A0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit Hi Zein, IMHO, the easiest way is to use a visualization package like vtk (www.kitware.com/vtk). Once you have loaded your data in an itk::Image, you can use itk::VTKImageExport and vtkImageImport to connect the itk and vtk pipeline. Nils -----Original Message----- From: insight-users-admin@public.kitware.com [mailto:insight-users-admin@public.kitware.com]On Behalf Of Zein Salah Sent: Wednesday, July 03, 2002 4:55 PM To: insight-users@public.kitware.com Subject: [Insight-users] Volume data viewer?? Hello everybody, Can anybody help me! I want to build a simple viewer for volume data, e.g. raw files. The viewer is to be used with ITK. Thanks, Zein ->8<------------->8<------------->8<------------->8<------------->8<------ ------->8<- Zein I. Salah Universität Tübingen, WSI-GRIS Sand 14 72076 Tübingen Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) ------=_NextPart_000_000F_01C222B4.C17FA1A0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi=20 Zein,
 
IMHO,=20 the easiest way is to use a visualization package like vtk (www.kitware.com/vtk). Once you = have loaded=20 your data in an itk::Image, you can use itk::VTKImageExport and = vtkImageImport=20 to connect the itk and vtk pipeline.
 
Nils
-----Original Message-----
From:=20 insight-users-admin@public.kitware.com=20 [mailto:insight-users-admin@public.kitware.com]On Behalf Of = Zein=20 Salah
Sent: Wednesday, July 03, 2002 4:55 PM
To:=20 insight-users@public.kitware.com
Subject: [Insight-users] = Volume=20 data viewer??

Hello everybody,
 
Can anybody help me! I want to build = a simple=20 viewer for volume data, e.g. raw files. The viewer is to be used with = ITK.=20
 
Thanks,
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20
------=_NextPart_000_000F_01C222B4.C17FA1A0-- From jjomier@cs.unc.edu Wed Jul 3 17:27:11 2002 From: jjomier@cs.unc.edu (Julien Jomier) Date: Wed, 3 Jul 2002 12:27:11 -0400 Subject: [Insight-users] Volume data viewer?? References: <000e01c222a3$fdf6d1a0$0607010a@ssn4006> Message-ID: <012d01c222ae$7c5c41b0$69691398@Picasso> Or if you want to display the volume as a collection of 2D slices you can use fltkImageViewer (in the Auxiliary directory). It requires FLTK (www.fltk.org) Basically: #include typedef fltk::ImageViewer< PixelType,OverlayPixelType > ImageViewerType; ImageViewerType* myViewer = new ImageViewerType; myViewer ->SetImage( myImage); myViewer ->Show(); HTH Julien ----- Original Message ----- From: Nils Hanssen To: 'Zein Salah' ; insight-users@public.kitware.com Sent: Wednesday, July 03, 2002 11:12 AM Subject: RE: [Insight-users] Volume data viewer?? Hi Zein, IMHO, the easiest way is to use a visualization package like vtk (www.kitware.com/vtk). Once you have loaded your data in an itk::Image, you can use itk::VTKImageExport and vtkImageImport to connect the itk and vtk pipeline. Nils -----Original Message----- From: insight-users-admin@public.kitware.com [mailto:insight-users-admin@public.kitware.com]On Behalf Of Zein Salah Sent: Wednesday, July 03, 2002 4:55 PM To: insight-users@public.kitware.com Subject: [Insight-users] Volume data viewer?? Hello everybody, Can anybody help me! I want to build a simple viewer for volume data, e.g. raw files. The viewer is to be used with ITK. Thanks, Zein ->8<------------->8<------------->8<------------->8<------------->8<-------- ----->8<- Zein I. Salah Universität Tübingen, WSI-GRIS Sand 14 72076 Tübingen Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) From srodrigu@gbt.tfo.upm.es Thu Jul 4 11:04:05 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Thu, 4 Jul 2002 12:04:05 +0200 Subject: [Insight-users] Write data in PNG Format Message-ID: <001e01c22342$216d4c60$640a048a@sisifo> This is a multi-part message in MIME format. ------=_NextPart_000_001B_01C22352.E4B14B30 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello every body, I'm developing and watershed segmentation example that can read PNG = Images and write the results in PNG format. I have a problems with = writing the smoothed image, the gradinet magnitude Image and the final = Segmented image. I want to write them to disk in PNG format. I'm using the next code for witing: =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 (...) typedef float PixelType; (...) typedef itk::Image< PixelType, 2 > ImageType; typedef itk::PNGImageIO IoType; (...) typedef itk::ImageFileWriter ImageWriterType; IoType::Pointer m_Io; CurvatureAnisotropicDiffusionImageFilterType::Pointer m_Smoothed; ImageWriterType::Pointer m_SmoothedWriter; (........Executing the algorithm....) m_SmoothedWriter->SetInput(m_Smoothed->GetOutput()); m_SmoothedWriter->SetFileName( filename ); m_SmoothedWriter->SetImageIO(m_Io); m_SmoothedWriter->Write(); =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=3D=3D Can anyboby tell me how can I do it or what is the problem. Thanks, Samuel ------=_NextPart_000_001B_01C22352.E4B14B30 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello every body,
 
I'm developing and watershed = segmentation example=20 that can read PNG Images and write the results in PNG format. I have a = problems=20 with writing the smoothed image, the gradinet magnitude Image and the = final=20 Segmented image. I want to write them to disk in PNG = format.
 
I'm using the next code for = witing:
=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  (...)
          type= def  =20 float           &n= bsp;           &nb= sp;    =20 PixelType;
          = (...)
typedef   itk::Image< = PixelType, 2=20 >      ImageType;
typedef  =20 = itk::PNGImageIO         IoTy= pe;
 
(...)
 
typedef itk::ImageFileWriter<ImageType>  &n= bsp;   ImageWriterType;
IoType::Pointer        &= nbsp;    m_Io;
CurvatureAnisotropicDiffusionImageFilterType::Pointer  = ;  m_Smoothed;
ImageWriterType::Pointer      &nbs= p;    m_SmoothedWriter;
 
(........Executing the=20 algorithm....)
 
  =20 = m_SmoothedWriter->SetInput(m_Smoothed->GetOutput());
  = ;=20 m_SmoothedWriter->SetFileName( filename );
  =20 m_SmoothedWriter->SetImageIO(m_Io);
  =20 m_SmoothedWriter->Write();
=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=3D=3D
 
Can anyboby tell me how can I do it or = what is the=20 problem.
 
Thanks,
 
Samuel
------=_NextPart_000_001B_01C22352.E4B14B30-- From alacruz@cg.tuwien.ac.at Fri Jul 5 18:54:43 2002 From: alacruz@cg.tuwien.ac.at (Alexandra La Cruz) Date: Fri, 5 Jul 2002 19:54:43 +0200 Subject: [Insight-users] Problem Loading an image CT Message-ID: Hi, I tryin to load an image CT, this image can be loaded in other aplication using OpenGL. Now I would like to move to use itk library. This is the information of file Loading Finished: (HOURS:MINUTES:SECONDS): 00:00:07 Duration in ms: 7703 Transferrate in MB/s: 8.016357 xSize: 256, ySize: 256, zSize: 494, zScale:2.000000 File read correctly. Init Window handle Textursize: 2048 And I used: typedef itk::Image< char, 3 > myImageType; typedef itk::ImageFileReader< myImageType > myImageReader; myImageReader::Pointer imageReader = myImageReader::New(); std::cout <<"Getting file"<SetFileName("test.dat"); try{ imageReader->Update(); } catch (itk::ExceptionObject & e) { std::cerr << "exception in file reader " << std::endl; std::cerr << e.GetDescription() << std::endl; std::cerr << e.GetLocation() << std::endl; return EXIT_FAILURE; } std::cout <<"Done with file"< Fri Jul 5 19:39:42 2002 From: Linglan Edwards (Linglan Edwards) Date: Fri, 5 Jul 2002 14:39:42 -0400 (EDT) Subject: [Insight-users] Tools based on ITK. Message-ID: <200207051839.OAA06657@lhc.nlm.nih.gov> Does anybody know if there're image registration and segmentation programs/tools developed based on ITK? If so, where do I find them? Thanks, L.E. ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From cates@sci.utah.edu Fri Jul 5 20:43:53 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Fri, 5 Jul 2002 13:43:53 -0600 (MDT) Subject: [Insight-users] Tools based on ITK. In-Reply-To: <200207051839.OAA06657@lhc.nlm.nih.gov> Message-ID: Hello, One place to look is the Examples section of the Insight CVS repository. These are mostly proof-of-concept applications, but more sophisticated programs are trickling in all the time. A fairly extensive segmentation tool will be available in that space in a few weeks. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Fri, 5 Jul 2002, Linglan Edwards wrote: > > Does anybody know if there're image registration and segmentation programs/tools > developed based on ITK? If so, where do I find them? > > Thanks, > > L.E. > > ============================ > Linglan Edwards, Ph.D. > Senior Software Engineer > National Library of Medicine > Phone: (301) 435-3147 > Email: linglan@nlm.nih.gov > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From luis.ibanez@kitware.com Mon Jul 8 06:23:23 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 01:23:23 -0400 Subject: [Insight-users] Tools based on ITK. References: Message-ID: <3D2921CB.4070307@kitware.com> Hi, Just to add a bit to what Josh already said: For Registration you may want to try: - Insight/Examples/MutualInformationEuler2DRegistration (although the title states: Euler2D(Rigid), there is a variety of other transforms that can be selected at compile time, something to play with) and - Insight/Examples/ImageRegistration Luis ============================================== Joshua Cates wrote: >Hello, > >One place to look is the Examples section of the Insight CVS repository. >These are mostly proof-of-concept applications, but more sophisticated >programs are trickling in all the time. A fairly extensive segmentation >tool will be available in that space in a few weeks. > >Josh. > >______________________________ > Josh Cates > School of Computer Science > University of Utah > Email: cates@sci.utah.edu > Phone: (801) 587-7697 > URL: www.cs.utk.edu/~cates > > >On Fri, 5 Jul 2002, Linglan Edwards wrote: > >>Does anybody know if there're image registration and segmentation programs/tools >>developed based on ITK? If so, where do I find them? >> >>Thanks, >> >>L.E. >> >>============================ >>Linglan Edwards, Ph.D. >>Senior Software Engineer >>National Library of Medicine >>Phone: (301) 435-3147 >>Email: linglan@nlm.nih.gov >> >>_______________________________________________ >>Insight-users mailing list >>Insight-users@public.kitware.com >>http://public.kitware.com/mailman/listinfo/insight-users >> > >_______________________________________________ >Insight-users mailing list >Insight-users@public.kitware.com >http://public.kitware.com/mailman/listinfo/insight-users > From luis.ibanez@kitware.com Mon Jul 8 06:36:56 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 01:36:56 -0400 Subject: [Insight-users] Volume data viewer?? References: <000e01c222a3$fdf6d1a0$0607010a@ssn4006> <012d01c222ae$7c5c41b0$69691398@Picasso> Message-ID: <3D2924F8.7020202@kitware.com> Hi, You may also want to try: - Insight/Examples/RawImageReaderViewer This is a small application that reads a RawImage and display it slice by slice. You should provide the number of voxels in { X, Y, Z} to the GUI, then click "Load" and then "Show". It requires FLTK (http://www.fltk.org). It uses internally the fltk::Image2DViewer class that Julien mentioned. Luis =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 Julien Jomier wrote: >Or if you want to display the volume as a collection of 2D slices you ca= n >use >fltkImageViewer (in the Auxiliary directory). It requires FLTK >(www.fltk.org) > >Basically: > >#include >typedef fltk::ImageViewer< PixelType,OverlayPixelType > ImageViewerType;= >ImageViewerType* myViewer =3D new ImageViewerType; >myViewer ->SetImage( myImage); >myViewer ->Show(); > >HTH > >Julien > >----- Original Message ----- >From: Nils Hanssen >To: 'Zein Salah' ; insight-users@public.kitware.com >Sent: Wednesday, July 03, 2002 11:12 AM >Subject: RE: [Insight-users] Volume data viewer?? > > >Hi Zein, > >IMHO, the easiest way is to use a visualization package like vtk >(www.kitware.com/vtk). Once you have loaded your data in an itk::Image, = you >can use itk::VTKImageExport and vtkImageImport to connect the itk and vt= k >pipeline. > >Nils >-----Original Message----- >From: insight-users-admin@public.kitware.com >[mailto:insight-users-admin@public.kitware.com]On Behalf Of Zein Salah >Sent: Wednesday, July 03, 2002 4:55 PM >To: insight-users@public.kitware.com >Subject: [Insight-users] Volume data viewer?? > > >Hello everybody, > >Can anybody help me! I want to build a simple viewer for volume data, e.= g. >raw files. The viewer is to be used with ITK. > >Thanks, > >Zein > > >->8<------------->8<------------->8<------------->8<------------->8<----= ---- >----->8<- >Zein I. Salah >Universit=E4t T=FCbingen, WSI-GRIS >Sand 14 >72076 T=FCbingen >Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com >Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) > >_______________________________________________ >Insight-users mailing list >Insight-users@public.kitware.com >http://public.kitware.com/mailman/listinfo/insight-users > From luis.ibanez@kitware.com Mon Jul 8 06:47:56 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 01:47:56 -0400 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> Message-ID: <3D29278C.7020304@kitware.com> Hi Samuel, I'm assuming that you succeded to write the images but they don't look right: is this what you observe ? If that's the case, one possible cause is that the PNG writers require images to be of PixelType "unsigned short". Your images are probably of PixelType "float", so you may want to rescale the scale of gray levels= , in particular for the gradient image since it should have positive and negative values that cannot be represented by "unsigned short". You can use the filter : http://public.kitware.com/Insight/Doxygen/html/classitk_1_1RescaleIntensi= tyImageFilter.html in order to map: =20 {min,max } of the float image to { 0, 65535 } (unsigned short) prior to=20 saving the image. and use the Calculator: http://public.kitware.com/Insight/Doxygen/html/classitk_1_1MinimumMaximum= ImageCalculator.html to get the min and max of the gray levels in the float image Luis =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 Samuel Rodr=EDguez Bescos wrote: > Hello every body, > > =20 > > I'm developing and watershed segmentation example that can read PNG=20 > Images and write the results in PNG format. I have a problems with=20 > writing the smoothed image, the gradinet magnitude Image and the final = > Segmented image. I want to write them to disk in PNG format. > > =20 > > I'm using the next code for witing: > > =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 > > (...) > > typedef float PixelType; > > (...) > > typedef itk::Image< PixelType, 2 > ImageType; > > typedef itk::PNGImageIO IoType; > > =20 > > (...) > > =20 > > typedef itk::ImageFileWriter ImageWriterType; > > IoType::Pointer m_Io; > > CurvatureAnisotropicDiffusionImageFilterType::Pointer m_Smoothed= ; > > ImageWriterType::Pointer m_SmoothedWriter; > > =20 > > (........Executing the algorithm....) > > =20 > > m_SmoothedWriter->SetInput(m_Smoothed->GetOutput()); > m_SmoothedWriter->SetFileName( filename ); > m_SmoothedWriter->SetImageIO(m_Io); > m_SmoothedWriter->Write(); > > =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=3D=3D > > =20 > > Can anyboby tell me how can I do it or what is the problem. > > =20 > > Thanks, > > =20 > > Samuel > From luis.ibanez@kitware.com Mon Jul 8 07:48:09 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 02:48:09 -0400 Subject: [Insight-users] Problem Loading an image CT References: Message-ID: <3D2935A9.3060900@kitware.com> Hi Alexandra, ITK has a mechanism to support reading multiple image file formats. This mechanism works by providing a front end reader : the "ImageFileReader" class, http://public.kitware.com/Insight/Doxygen/html/classitk_1_1ImageFileReader.html which looks like a filter (an Image Source to be precise). The actual reading of the image file is delegated to particular classes implementing specific file formats. Those classes derive from the ImageIO class. There should be at least one for each specific file format (e.g. Raw, MetaImage....). http://public.kitware.com/Insight/Doxygen/html/classitk_1_1ImageIOBase.html This structure facilitates to produce cleaner code that is almost independent of the Image file format. Your code is fine, since you are declaring and instantiating the ImageFileReader. However, no ImageIO class has been specified. You just need to add ImageIO Factories using code like: #include #include #include itk::MetaImageIOFactory::RegisterOneFactory(); itk::PNGImageIOFactory::RegisterOneFactory(); itk::RawGImageIOFactory::RegisterOneFactory(); Please take a look at the examples: Insight/Examples/RawImageReadWrite Insight/Examples/RawImageReaderViewer that illustrate how to read a Raw Image. The first example rewrite the image to Raw format. The second example displays the image slice by slice. Note that there should be an ImageIO adapted to your ".dat" image file format. If your ".dat" file is just a raw file, please use the ".raw" extension since this is the hint that the factory uses in order to recognize your raw image file as such. Please let us know if you encounter any problem using the ImageIO Factories. Thanks Luis (We still have some improvements pending on the IO, that were suggested by users in the mailling list,... they should be comming soon..) ================================================== Alexandra La Cruz wrote: > Hi, > > I tryin to load an image CT, this image can be loaded in other aplication > using OpenGL. Now I would like to move to use itk library. > > This is the information of file > Loading Finished: (HOURS:MINUTES:SECONDS): 00:00:07 > Duration in ms: 7703 > Transferrate in MB/s: 8.016357 > > xSize: 256, ySize: 256, zSize: 494, zScale:2.000000 > File read correctly. Init Window handle > Textursize: 2048 > > And I used: > > typedef itk::Image< char, 3 > myImageType; > typedef itk::ImageFileReader< myImageType > myImageReader; > > myImageReader::Pointer imageReader = myImageReader::New(); > > std::cout <<"Getting file"< > imageReader->SetFileName("test.dat"); > try{ > imageReader->Update(); > } > catch (itk::ExceptionObject & e) > { > std::cerr << "exception in file reader " << std::endl; > std::cerr << e.GetDescription() << std::endl; > std::cerr << e.GetLocation() << std::endl; > return EXIT_FAILURE; > } > std::cout <<"Done with file"< > In order to read the file. > > But I have this exception: > ---- > Getting file > exception in file reader > Could not create IO object for file test.dat > Unknown > ---- > > > Could some one help me? what it is the problem? > > I will thanks your valious help > > Greetings > ALC > > -------------------------------------------------------------- > Alexandra La Cruz > Institute of Computer Graphics and Algorithms > Vienna University of Technology > mailto:alacruz@cg.tuwien.ac.at > http://www.cg.tuwien.ac.at/staff/AlexandraLaCruz.html > Tel.: +43 1 58801-18670 Fax: +43 1 58801-18698 > -------------------------------------------------------------- > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From srodrigu@gbt.tfo.upm.es Mon Jul 8 09:40:43 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Mon, 8 Jul 2002 10:40:43 +0200 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> <3D29278C.7020304@kitware.com> Message-ID: <001801c2265b$2658abe0$640a048a@sisifo> Hello Luis, Thanks for your request. The problem is saving an image in .PGM format. The progrmas has a error when I want to save a file in PGM format with the code I have sent before. I'll try to do what you have said and I'll tell you what happens. Maybe is a date formats incompatibility. Thanks again, Samuel ----- Original Message ----- From: "Luis Ibanez" To: "Samuel Rodríguez Bescos" Cc: Sent: Monday, July 08, 2002 7:47 AM Subject: Re: [Insight-users] Write data in PNG Format > Hi Samuel, > > I'm assuming that you succeded to write the images but they don't > look right: is this what you observe ? > > If that's the case, one possible cause is that the PNG writers require > images to be of PixelType "unsigned short". Your images are probably > of PixelType "float", so you may want to rescale the scale of gray levels, > in particular for the gradient image since it should have positive and > negative values that cannot be represented by "unsigned short". > > You can use the filter : > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1RescaleIntensityI mageFilter.html > > in order to map: > > {min,max } of the float image to { 0, 65535 } (unsigned short) prior to > saving the image. > > and use the Calculator: > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1MinimumMaximumIma geCalculator.html > > to get the min and max of the gray levels in the float image > > > > Luis > > > ================================= > > Samuel Rodríguez Bescos wrote: > > > Hello every body, > > > > > > > > I'm developing and watershed segmentation example that can read PNG > > Images and write the results in PNG format. I have a problems with > > writing the smoothed image, the gradinet magnitude Image and the final > > Segmented image. I want to write them to disk in PNG format. > > > > > > > > I'm using the next code for witing: > > > > ========================================================== > > > > (...) > > > > typedef float PixelType; > > > > (...) > > > > typedef itk::Image< PixelType, 2 > ImageType; > > > > typedef itk::PNGImageIO IoType; > > > > > > > > (...) > > > > > > > > typedef itk::ImageFileWriter ImageWriterType; > > > > IoType::Pointer m_Io; > > > > CurvatureAnisotropicDiffusionImageFilterType::Pointer m_Smoothed; > > > > ImageWriterType::Pointer m_SmoothedWriter; > > > > > > > > (........Executing the algorithm....) > > > > > > > > m_SmoothedWriter->SetInput(m_Smoothed->GetOutput()); > > m_SmoothedWriter->SetFileName( filename ); > > m_SmoothedWriter->SetImageIO(m_Io); > > m_SmoothedWriter->Write(); > > > > =============================================================== > > > > > > > > Can anyboby tell me how can I do it or what is the problem. > > > > > > > > Thanks, > > > > > > > > Samuel > > > > From srodrigu@gbt.tfo.upm.es Mon Jul 8 10:34:55 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Mon, 8 Jul 2002 11:34:55 +0200 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> <3D29278C.7020304@kitware.com> Message-ID: <001201c22662$b83d49b0$640a048a@sisifo> Hello Luis, It's not the case you say. The problem is writing the images in PNG format. Thanks for your time, Samuel ----- Original Message ----- From: "Luis Ibanez" To: "Samuel Rodríguez Bescos" Cc: Sent: Monday, July 08, 2002 7:47 AM Subject: Re: [Insight-users] Write data in PNG Format > Hi Samuel, > > I'm assuming that you succeded to write the images but they don't > look right: is this what you observe ? > > If that's the case, one possible cause is that the PNG writers require > images to be of PixelType "unsigned short". Your images are probably > of PixelType "float", so you may want to rescale the scale of gray levels, > in particular for the gradient image since it should have positive and > negative values that cannot be represented by "unsigned short". > > You can use the filter : > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1RescaleIntensityI mageFilter.html > > in order to map: > > {min,max } of the float image to { 0, 65535 } (unsigned short) prior to > saving the image. > > and use the Calculator: > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1MinimumMaximumIma geCalculator.html > > to get the min and max of the gray levels in the float image > > > > Luis > > > ================================= > > Samuel Rodríguez Bescos wrote: > > > Hello every body, > > > > > > > > I'm developing and watershed segmentation example that can read PNG > > Images and write the results in PNG format. I have a problems with > > writing the smoothed image, the gradinet magnitude Image and the final > > Segmented image. I want to write them to disk in PNG format. > > > > > > > > I'm using the next code for witing: > > > > ========================================================== > > > > (...) > > > > typedef float PixelType; > > > > (...) > > > > typedef itk::Image< PixelType, 2 > ImageType; > > > > typedef itk::PNGImageIO IoType; > > > > > > > > (...) > > > > > > > > typedef itk::ImageFileWriter ImageWriterType; > > > > IoType::Pointer m_Io; > > > > CurvatureAnisotropicDiffusionImageFilterType::Pointer m_Smoothed; > > > > ImageWriterType::Pointer m_SmoothedWriter; > > > > > > > > (........Executing the algorithm....) > > > > > > > > m_SmoothedWriter->SetInput(m_Smoothed->GetOutput()); > > m_SmoothedWriter->SetFileName( filename ); > > m_SmoothedWriter->SetImageIO(m_Io); > > m_SmoothedWriter->Write(); > > > > =============================================================== > > > > > > > > Can anyboby tell me how can I do it or what is the problem. > > > > > > > > Thanks, > > > > > > > > Samuel > > > > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users From salah@gris.uni-tuebingen.de Mon Jul 8 12:09:58 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Mon, 8 Jul 2002 13:09:58 +0200 Subject: [Insight-users] How to start a new ITK project in Visual c++??? Message-ID: <01fe01c2266f$ff59dd60$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_01FB_01C22680.C2D20B90 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello all, I could execute and a little bit modify the examples of itk in Visual = C++. But I could not start a new project. Can anybody help me in this = regard. I need a very simple example. How can set the project = properties, etc. Thanks in advance for any help!! Zein=20 ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_01FB_01C22680.C2D20B90 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello all,
 
I could execute and a little bit modify = the=20 examples of itk in Visual C++. But I could not start a new project. Can = anybody=20 help me in this regard. I need a very simple example. How can set the = project=20 properties, etc.
 
Thanks in advance for any = help!!
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_01FB_01C22680.C2D20B90-- From srodrigu@gbt.tfo.upm.es Mon Jul 8 12:38:20 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Mon, 8 Jul 2002 13:38:20 +0200 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> <3D29278C.7020304@kitware.com> Message-ID: <002401c22673$f7acd9b0$640a048a@sisifo> Hello again, Sorry but there isn't the ItkRescaleIntensityImageFilter module in my ITK workspace. I Think that it isn't in the Beta release. Is it?. If It isn't. How Can I get it?. Thanks a lot, Samuel ----- Original Message ----- From: "Luis Ibanez" To: "Samuel Rodríguez Bescos" Cc: Sent: Monday, July 08, 2002 7:47 AM Subject: Re: [Insight-users] Write data in PNG Format > Hi Samuel, > > I'm assuming that you succeded to write the images but they don't > look right: is this what you observe ? > > If that's the case, one possible cause is that the PNG writers require > images to be of PixelType "unsigned short". Your images are probably > of PixelType "float", so you may want to rescale the scale of gray levels, > in particular for the gradient image since it should have positive and > negative values that cannot be represented by "unsigned short". > > You can use the filter : > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1RescaleIntensityI mageFilter.html > > in order to map: > > {min,max } of the float image to { 0, 65535 } (unsigned short) prior to > saving the image. > > and use the Calculator: > > http://public.kitware.com/Insight/Doxygen/html/classitk_1_1MinimumMaximumIma geCalculator.html > > to get the min and max of the gray levels in the float image > > > > Luis > > > ================================= > > Samuel Rodríguez Bescos wrote: > > > Hello every body, > > > > > > > > I'm developing and watershed segmentation example that can read PNG > > Images and write the results in PNG format. I have a problems with > > writing the smoothed image, the gradinet magnitude Image and the final > > Segmented image. I want to write them to disk in PNG format. > > > > > > > > I'm using the next code for witing: > > > > ========================================================== > > > > (...) > > > > typedef float PixelType; > > > > (...) > > > > typedef itk::Image< PixelType, 2 > ImageType; > > > > typedef itk::PNGImageIO IoType; > > > > > > > > (...) > > > > > > > > typedef itk::ImageFileWriter ImageWriterType; > > > > IoType::Pointer m_Io; > > > > CurvatureAnisotropicDiffusionImageFilterType::Pointer m_Smoothed; > > > > ImageWriterType::Pointer m_SmoothedWriter; > > > > > > > > (........Executing the algorithm....) > > > > > > > > m_SmoothedWriter->SetInput(m_Smoothed->GetOutput()); > > m_SmoothedWriter->SetFileName( filename ); > > m_SmoothedWriter->SetImageIO(m_Io); > > m_SmoothedWriter->Write(); > > > > =============================================================== > > > > > > > > Can anyboby tell me how can I do it or what is the problem. > > > > > > > > Thanks, > > > > > > > > Samuel > > > > From luis.ibanez@kitware.com Mon Jul 8 15:37:40 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 10:37:40 -0400 Subject: [Insight-users] How to start a new ITK project in Visual c++??? References: <01fe01c2266f$ff59dd60$aeb00286@wsigris.unituebingen.de> Message-ID: <3D29A3B4.4050306@kitware.com> Hi Zein, You can find instructions about how to setup a new VC++ project in the document: Insight/Documentation/VC_Custom_Projects.doc However, the recomended way to create a new project is to write your own CMakeList.txt file and let CMake create the VC++ project file for you. That will save you a lot of coffee and time ! You may want to look at the example in: Insight/Examples/SampleProject It is a minimal example of how to write a CMakeLists.txt file for a project intented to be used outside the ITK source tree. Luis =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 Zein Salah wrote: > Hello all, >=20 > =20 >=20 > I could execute and a little bit modify the examples of itk in Visual=20 > C++. But I could not start a new project. Can anybody help me in this=20 > regard. I need a very simple example. How can set the project=20 > properties, etc. >=20 > =20 >=20 > Thanks in advance for any help!! >=20 > =20 >=20 > Zein >=20 > =20 >=20 > =20 >=20 > ->8<------------->8<------------->8<------------->8<------------->8<---= ---------->8<- > Zein I. Salah > Universit=E4t T=FCbingen, WSI-GRIS > Sand 14 > 72076 T=FCbingen > Email: salah@gris.uni-tuebingen.de = =20 > / zeinsalah@hotmail.com > Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) >=20 From luis.ibanez@kitware.com Mon Jul 8 15:31:45 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 08 Jul 2002 10:31:45 -0400 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> <3D29278C.7020304@kitware.com> <002401c22673$f7acd9b0$640a048a@sisifo> Message-ID: <3D29A251.5090402@kitware.com> Hi Samuel, The RescaleIntensity filter is in the Beta 0.7 release (June 2002), but not on the Beta 0.5 release (February 2002). In order to get the filter you can either: 1) download the new Beta release (0.7) (available in tarballs) or 2) use a cvs checkout (which will give you the most recent version) You will find the filter in: /Insight/Code/BasicFilters/itkRescaleIntensityImageFilter.h /Insight/Code/BasicFilters/itkRescaleIntensityImageFilter.txx Luis =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=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D Samuel Rodr=EDguez Bescos wrote: > Hello again, > Sorry but there isn't the ItkRescaleIntensityImageFilter module in my = ITK > workspace. I Think that it isn't in the Beta release. Is it?. If It is= n't. > How Can I get it?. >=20 > Thanks a lot, >=20 > Samuel From salah@gris.uni-tuebingen.de Tue Jul 9 10:43:02 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Tue, 9 Jul 2002 11:43:02 +0200 Subject: [Insight-users] unexpected results in RawImageReaderViewer Message-ID: <003401c2272d$04b35b70$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0031_01C2273D.C826A7A0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello all, 1. I have run the ITK example RawImageReaderViewer. There was no compilation or linking errors. It executed. The example is = ecpected to display a raw image as slices. I could only see something = (although not correct) in the first slice only. the subsequent slices = showed nothing at all. Has anybody any idea where could the problem be. 2. Do anybody have an iead whether it is possible to use Qt = (http://www.trolltech.com) for the design of user-interfaces for ITK. Thanks in advance for any help!! Zein=20 ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0031_01C2273D.C826A7A0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello all,
 
1.  I have run the ITK = example=20 RawImageReaderViewer.
There was no compilation or linking = errors. It=20 executed. The example is ecpected to display a raw image as slices. I = could only=20 see something (although not correct) in the first slice only. the = subsequent=20 slices showed nothing at all.  Has anybody any idea where could the = problem=20 be.
 
2. Do anybody have an iead whether it = is possible=20 to use Qt (http://www.trolltech.com) for=20 the design of user-interfaces for ITK.
 
Thanks in advance for any = help!!
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0031_01C2273D.C826A7A0-- From luis.ibanez@kitware.com Tue Jul 9 12:28:30 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Tue, 09 Jul 2002 07:28:30 -0400 Subject: [Insight-users] unexpected results in RawImageReaderViewer References: <003401c2272d$04b35b70$aeb00286@wsigris.unituebingen.de> Message-ID: <3D2AC8DE.5050106@kitware.com> Hi Zein, 1) This was a bug in RawImageReaderViewer, and was fixed this week, If you are using cvs, you can just update your checkout and get the fixed version. Otherwise you can do the following: Edit the file: Insight/Examples/RawImageReaderViewer/itkRawImageReaderViewer.cxx and in line 145 (in the "Load()" method) add: m_RawReader->SetFileDimensionality( 3 ); This will indicate the reader that the file contains a 3D volume as oppossed to a 2D image which is the default for the reader. 2) There is no problem for using Qt with ITK. The toolkit is designed to enforce GUI independence. CMake also has support for Qt (that was contributed by Qt users). Probably the best way to interface Qt with ITK is by managing to redirect ITK events as Qt signals and wrapping itkObservers/Commands as Qt slots. Please let us know if you find any problem doing so. Thanks Luis =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 Zein Salah wrote: > Hello all, >=20 > =20 >=20 > 1. I have run the ITK example RawImageReaderViewer. >=20 > There was no compilation or linking errors. It executed. The example is= =20 > ecpected to display a raw image as slices. I could only see something=20 > (although not correct) in the first slice only. the subsequent slices=20 > showed nothing at all. Has anybody any idea where could the problem be= =2E >=20 > =20 >=20 > 2. Do anybody have an iead whether it is possible to use Qt=20 > (http://www.trolltech.com) for the design of user-interfaces for ITK. >=20 > =20 >=20 > Thanks in advance for any help!! >=20 > =20 >=20 > Zein >=20 > =20 >=20 > =20 >=20 > ->8<------------->8<------------->8<------------->8<------------->8<---= ---------->8<- > Zein I. Salah > Universit=E4t T=FCbingen, WSI-GRIS > Sand 14 > 72076 T=FCbingen > Email: salah@gris.uni-tuebingen.de = =20 > / zeinsalah@hotmail.com > Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) >=20 From alacruz@cg.tuwien.ac.at Tue Jul 9 13:41:35 2002 From: alacruz@cg.tuwien.ac.at (Alexandra La Cruz) Date: Tue, 9 Jul 2002 14:41:35 +0200 Subject: [Insight-users] Problem with the RawReaderImageViewer Message-ID: Hi, I did the modification in line 145 about the dimension .. m_RawReader->SetFileDimensionality( 3 ); but I can read the data but in the disply I can not see any coherent images and the aplication show an violation error someone know about this problem or what it is my error. I dowloaded an example image in The BrainWeb project home page : http://www.bic.mni.mcgill.ca/brainweb image data BrainWeb download: PD ICBM normal 1mm pn3 rf20 Modality=PD, Protocol=ICBM, Phantom_name=normal, Slice_thickness=1mm, Noise=3%, INU=20% MINC volume info: image: signed__ short 0 to 4095 image dimensions: zspace yspace xspace dimension name length step start -------------- ------ ---- ----- zspace 181 1 -72 yspace 217 1 -126 xspace 181 1 -90 Original MINC file size: 10.5 Mb NDims = 3 DimSize = 181 217 180 ElementType = MET_UCHAR ElementSpacing = 1.0 1.0 1.0 ElementByteOrderMSB = False ElementDataFile = brainweb1e1a10f20Rot10Tx15.raw Greetings ALC -------------------------------------------------------------- Alexandra La Cruz Institute of Computer Graphics and Algorithms Vienna University of Technology mailto:alacruz@cg.tuwien.ac.at http://www.cg.tuwien.ac.at/staff/AlexandraLaCruz.html Tel.: +43 1 58801-18670 Fax: +43 1 58801-18698 -------------------------------------------------------------- From salah@gris.uni-tuebingen.de Tue Jul 9 16:41:06 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Tue, 9 Jul 2002 17:41:06 +0200 Subject: [Insight-users] Does VTK have a Viewer for Raw image files?? Message-ID: <004b01c2275f$09f36e40$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0048_01C2276F.CD6DE660 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everybody, Question: Does VTK have a Viewer for Raw image files?? either as volume = data or as slices??? thanks, Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0048_01C2276F.CD6DE660 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi everybody,
 
Question:  Does VTK have a Viewer = for Raw=20 image files?? either as volume data or as slices???
 
thanks,
 
Zein
 
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0048_01C2276F.CD6DE660-- From chenting@graphics.cis.upenn.edu Tue Jul 9 21:11:15 2002 From: chenting@graphics.cis.upenn.edu (Ting Chen) Date: Tue, 9 Jul 2002 15:11:15 -0500 Subject: [Insight-users] Volume data viewer?? Message-ID: <001701c22784$c75fb5e0$5c02829e@otto.cis.upenn.edu> Hi! Lius, which version of fltk will you recommend? It would be better that we can use a stable version of fltk so there will not be the trouble for changing the code from time to time. thanks a lot! ting -----Original Message----- From: Luis Ibanez To: Julien Jomier Cc: Nils Hanssen ; 'Zein Salah' ; insight-users@public.kitware.com Date: Monday, July 08, 2002 12:33 AM Subject: Re: [Insight-users] Volume data viewer?? > >Hi, > >You may also want to try: > >- Insight/Examples/RawImageReaderViewer > >This is a small application that reads a RawImage >and display it slice by slice. You should provide the >number of voxels in { X, Y, Z} to the GUI, then >click "Load" and then "Show". > >It requires FLTK (http://www.fltk.org). > >It uses internally the fltk::Image2DViewer class that >Julien mentioned. > > > Luis > > >=========================== >Julien Jomier wrote: > >>Or if you want to display the volume as a collection of 2D slices you can >>use >>fltkImageViewer (in the Auxiliary directory). It requires FLTK >>(www.fltk.org) >> >>Basically: >> >>#include >>typedef fltk::ImageViewer< PixelType,OverlayPixelType > ImageViewerType; >>ImageViewerType* myViewer = new ImageViewerType; >>myViewer ->SetImage( myImage); >>myViewer ->Show(); >> >>HTH >> >>Julien >> >>----- Original Message ----- >>From: Nils Hanssen >>To: 'Zein Salah' ; insight-users@public.kitware.com >>Sent: Wednesday, July 03, 2002 11:12 AM >>Subject: RE: [Insight-users] Volume data viewer?? >> >> >>Hi Zein, >> >>IMHO, the easiest way is to use a visualization package like vtk >>(www.kitware.com/vtk). Once you have loaded your data in an itk::Image, you >>can use itk::VTKImageExport and vtkImageImport to connect the itk and vtk >>pipeline. >> >>Nils >>-----Original Message----- >>From: insight-users-admin@public.kitware.com >>[mailto:insight-users-admin@public.kitware.com]On Behalf Of Zein Salah >>Sent: Wednesday, July 03, 2002 4:55 PM >>To: insight-users@public.kitware.com >>Subject: [Insight-users] Volume data viewer?? >> >> >>Hello everybody, >> >>Can anybody help me! I want to build a simple viewer for volume data, e.g. >>raw files. The viewer is to be used with ITK. >> >>Thanks, >> >>Zein >> >> >>->8<------------->8<------------->8<------------->8<------------->8<------ -- >>----->8<- >>Zein I. Salah >>Universität Tübingen, WSI-GRIS >>Sand 14 >>72076 Tübingen >>Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com >>Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) >> >>_______________________________________________ >>Insight-users mailing list >>Insight-users@public.kitware.com >>http://public.kitware.com/mailman/listinfo/insight-users >> > > > >_______________________________________________ >Insight-users mailing list >Insight-users@public.kitware.com >http://public.kitware.com/mailman/listinfo/insight-users From jjomier@cs.unc.edu Wed Jul 10 03:33:29 2002 From: jjomier@cs.unc.edu (jjomier@cs.unc.edu) Date: Tue, 09 Jul 2002 22:33:29 -0400 Subject: [Insight-users] Volume data viewer?? Message-ID: <1c7481c0b6.1c0b61c748@cs.unc.edu> Hi Ting=2C It=27s recommended to use FLTK 1=2E0=2E11 with ITK=2E However=2C if you want to use a more recent version you can=2E You may need to update CMake=2E Julien ----- Original Message ----- From=3A =22Ting Chen=22 =3Cchenting=40graphics=2Ecis=2Eupenn=2Eedu=3E Date=3A Tuesday=2C July 9=2C 2002 4=3A11 pm Subject=3A Re=3A =5BInsight-users=5D Volume data viewer=3F=3F =3E Hi! Lius=2C =3E which version of fltk will you recommend=3F It would be better that = =3E we can use =3E a stable version of fltk so there will not be the trouble for = =3E changing the =3E code from time to time=2E =3E thanks a lot! =3E = =3E ting =3E = =3E = =3E -----Original Message----- =3E From=3A Luis Ibanez =3Cluis=2Eibanez=40kitware=2Ecom=3E =3E To=3A Julien Jomier =3Cjjomier=40cs=2Eunc=2Eedu=3E =3E Cc=3A Nils Hanssen =3Chanssen=40caesar=2Ede=3E=3B =27Zein Salah=27 =3E =3Csalah=40gris=2Euni-tuebingen=2Ede=3E=3B insight-users=40public=2Ek= itware=2Ecom =3E =3Cinsight-users=40public=2Ekitware=2Ecom=3E =3E Date=3A Monday=2C July 08=2C 2002 12=3A33 AM =3E Subject=3A Re=3A =5BInsight-users=5D Volume data viewer=3F=3F =3E = =3E = =3E =3E =3E =3EHi=2C =3E =3E =3E =3EYou may also want to try=3A =3E =3E =3E =3E- Insight/Examples/RawImageReaderViewer =3E =3E =3E =3EThis is a small application that reads a RawImage =3E =3Eand display it slice by slice=2E You should provide the =3E =3Enumber of voxels in =7B X=2C Y=2C Z=7D to the GUI=2C then =3E =3Eclick =22Load=22 and then =22Show=22=2E =3E =3E =3E =3EIt requires FLTK (http=3A//www=2Efltk=2Eorg)=2E =3E =3E =3E =3EIt uses internally the fltk=3A=3AImage2DViewer class that =3E =3EJulien mentioned=2E =3E =3E =3E =3E =3E =3E Luis =3E =3E =3E =3E =3E =3E=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 =3E =3EJulien Jomier wrote=3A =3E =3E =3E =3E=3EOr if you want to display the volume as a collection of 2D = =3E slices you can =3E =3E=3Euse =3E =3E=3EfltkImageViewer (in the Auxiliary directory)=2E It requires FLT= K =3E =3E=3E(www=2Efltk=2Eorg) =3E =3E=3E =3E =3E=3EBasically=3A =3E =3E=3E =3E =3E=3E=23include =3CfltkImageViewer=2Eh=3E =3E =3E=3Etypedef fltk=3A=3AImageViewer=3C PixelType=2COverlayPixelType =3E= = =3E ImageViewerType=3B=3E=3EImageViewerType* myViewer =3D new ImageViewe= rType=3B =3E =3E=3EmyViewer -=3ESetImage( myImage)=3B =3E =3E=3EmyViewer -=3EShow()=3B =3E =3E=3E =3E =3E=3EHTH =3E =3E=3E =3E =3E=3EJulien =3E =3E=3E =3E =3E=3E----- Original Message ----- =3E =3E=3EFrom=3A Nils Hanssen =3E =3E=3ETo=3A =27Zein Salah=27 =3B insight-users=40public=2Ekitware=2Ec= om =3E =3E=3ESent=3A Wednesday=2C July 03=2C 2002 11=3A12 AM =3E =3E=3ESubject=3A RE=3A =5BInsight-users=5D Volume data viewer=3F=3F =3E =3E=3E =3E =3E=3E =3E =3E=3EHi Zein=2C =3E =3E=3E =3E =3E=3EIMHO=2C the easiest way is to use a visualization package like = vtk =3E =3E=3E(www=2Ekitware=2Ecom/vtk)=2E Once you have loaded your data in = an = =3E itk=3A=3AImage=2Cyou =3E =3E=3Ecan use itk=3A=3AVTKImageExport and vtkImageImport to connect t= he = =3E itk and vtk =3E =3E=3Epipeline=2E =3E =3E=3E =3E =3E=3ENils =3E =3E=3E-----Original Message----- =3E =3E=3EFrom=3A insight-users-admin=40public=2Ekitware=2Ecom =3E =3E=3E=5Bmailto=3Ainsight-users-admin=40public=2Ekitware=2Ecom=5DOn B= ehalf Of Zein = =3E Salah=3E=3ESent=3A Wednesday=2C July 03=2C 2002 4=3A55 PM =3E =3E=3ETo=3A insight-users=40public=2Ekitware=2Ecom =3E =3E=3ESubject=3A =5BInsight-users=5D Volume data viewer=3F=3F =3E =3E=3E =3E =3E=3E =3E =3E=3EHello everybody=2C =3E =3E=3E =3E =3E=3ECan anybody help me! I want to build a simple viewer for volume= = =3E data=2C e=2Eg=2E =3E =3E=3Eraw files=2E The viewer is to be used with ITK=2E =3E =3E=3E =3E =3E=3EThanks=2C =3E =3E=3E =3E =3E=3EZein =3E =3E=3E =3E =3E=3E =3E =3E=3E-=3E8=3C-------------=3E8=3C-------------=3E8=3C-------------=3E= 8=3C------------- =3E =3E8=3C------ =3E -- =3E =3E=3E-----=3E8=3C- =3E =3E=3EZein I=2E Salah =3E =3E=3EUniversit=E4t T=FCbingen=2C WSI-GRIS =3E =3E=3ESand 14 =3E =3E=3E72076 T=FCbingen =3E =3E=3EEmail=3A salah=40gris=2Euni-tuebingen=2Ede / zeinsalah=40hotma= il=2Ecom =3E =3E=3ETel=2E=3A (07071) 29 75465 (GRIS) =2C (07071) 96 44 39 (privat)= =3E =3E=3E =3E =3E=3E=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =5F =3E =3E=3EInsight-users mailing list =3E =3E=3EInsight-users=40public=2Ekitware=2Ecom =3E =3E=3Ehttp=3A//public=2Ekitware=2Ecom/mailman/listinfo/insight-users =3E =3E=3E =3E =3E =3E =3E =3E =3E =3E =3E=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =3E =3EInsight-users mailing list =3E =3EInsight-users=40public=2Ekitware=2Ecom =3E =3Ehttp=3A//public=2Ekitware=2Ecom/mailman/listinfo/insight-users =3E = =3E =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F =3E Insight-users mailing list =3E Insight-users=40public=2Ekitware=2Ecom =3E http=3A//public=2Ekitware=2Ecom/mailman/listinfo/insight-users =3E From srodrigu@gbt.tfo.upm.es Wed Jul 10 09:04:56 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Wed, 10 Jul 2002 10:04:56 +0200 Subject: [Insight-users] Write data in PNG Format References: <001e01c22342$216d4c60$640a048a@sisifo> <3D29278C.7020304@kitware.com> <002401c22673$f7acd9b0$640a048a@sisifo> <3D29A251.5090402@kitware.com> Message-ID: <000e01c227e8$7af5cbe0$640a048a@sisifo> Hi Luis,ç Thank you for your help, I imported the files itkRescaleIntensityImageFilter.h and .cxx from the Beta version 0.7 . Moreover, this file uses a new data type in the class NumericTraits (typedef double RealType) . So I had got to update the files itkNumericTraits (.h and .cxx) as well. Now the example runs fine. Thanks a lot, Samuel ----- Original Message ----- From: "Luis Ibanez" To: "Samuel Rodríguez Bescos" Cc: Sent: Monday, July 08, 2002 4:31 PM Subject: Re: [Insight-users] Write data in PNG Format > > Hi Samuel, > > The RescaleIntensity filter is in the Beta 0.7 release > (June 2002), but not on the Beta 0.5 release (February 2002). > > In order to get the filter you can either: > > 1) download the new Beta release (0.7) (available in tarballs) > > or > > 2) use a cvs checkout (which will give you the most recent version) > > > You will find the filter in: > > /Insight/Code/BasicFilters/itkRescaleIntensityImageFilter.h > /Insight/Code/BasicFilters/itkRescaleIntensityImageFilter.txx > > > > > Luis > > > ============================================================================ > > Samuel Rodríguez Bescos wrote: > > > Hello again, > > Sorry but there isn't the ItkRescaleIntensityImageFilter module in my ITK > > workspace. I Think that it isn't in the Beta release. Is it?. If It isn't. > > How Can I get it?. > > > > Thanks a lot, > > > > Samuel > > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users From salah@gris.uni-tuebingen.de Wed Jul 10 12:54:19 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Wed, 10 Jul 2002 13:54:19 +0200 Subject: [Insight-users] Documentation for the Algorithms?? References: <01fe01c2266f$ff59dd60$aeb00286@wsigris.unituebingen.de> <3D29A3B4.4050306@kitware.com> Message-ID: <003001c22808$85f46130$aeb00286@wsigris.unituebingen.de> Hello all, Where can I find documentation for the Algorithms that are implemented in ITK???? Thanks in advance for any help!! Zein ->8<------------->8<------------->8<------------->8<------------->8<------- ------>8<- Zein I. Salah Universität Tübingen, WSI-GRIS Sand 14 72076 Tübingen Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) From zjzhang@ee.cuhk.edu.hk Wed Jul 10 16:47:05 2002 From: zjzhang@ee.cuhk.edu.hk (zhangzhijun) Date: Wed, 10 Jul 2002 23:47:05 +0800 Subject: [Insight-users] about MIThinPlateSplineRegistrator References: <001701c1cd80$71be7620$1223bd89@ee.cuhk.edu.hk> <3C9613F2.80506@kitware.com> Message-ID: <001501c22829$0b08ee20$1223bd89@ee.cuhk.edu.hk> Dear Luis: I want to put the TPS, EBS and VS transformation into the multi-modal registration frame work it is implemented following the 3 steps--- transform, similarity metric and optimization, now since the example of MIThinplatesplineRegistrator is not complete, I think I need do the following work: 1. Add an Initialization of the parameters for the TPS, in my case I want to register two 2D image of 181*217 dimensions, I choose totally 10*11 landmarks for calculating of the TPS parameters, After I calculate the W matrix, the itkKernelTransformation reorgnized the Wmatrix into three part but the 3 matrix members are all protected member, I find I can't have access to it. I want to set the 226 parameters and then use optimization method to do the optimization. 2 also I don't know how the deviation in the itk is implemented and what's the order for these 226 parameters. because I need do an steepest descent optimization, so the order of every parameter should follow some convention, I don't know what is it. regards, zhang zhijun From salah@gris.uni-tuebingen.de Thu Jul 11 11:35:13 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Thu, 11 Jul 2002 12:35:13 +0200 Subject: [Insight-users] Segmentation Filters for Volume data. Message-ID: <001c01c228c6$a3dd7330$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0019_01C228D7.67533060 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everybody, Can someone help me?? I want to apply segmentation filters to volume data. I read the image = data from raw image file .raw based on the example = (Insight/..../RawImageReaderViewer) and I use the same example for = viewing the results. Can anybody help me? How can I apply the filters = (mainly, segmentation filters) to the data read in the way that I have = discribed? Thanks in advance for any kind of help!!!! Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0019_01C228D7.67533060 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi everybody,
 
Can someone help me??
I want to apply segmentation filters to = volume=20 data. I read the image data from raw image file  .raw based on the = example=20 (Insight/..../RawImageReaderViewer) and I use the same example for = viewing the=20 results. Can anybody help me? How can I apply the filters (mainly, = segmentation=20 filters) to the  data read in the way that I have = discribed?
 
Thanks in advance for any kind of=20 help!!!!
 
Zein
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0019_01C228D7.67533060-- From luis.ibanez@kitware.com Fri Jul 12 13:33:19 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 08:33:19 -0400 Subject: [Insight-users] Problem with the RawReaderImageViewer References: Message-ID: <3D2ECC8F.7020805@kitware.com> Hi Alexandra, The problem seems to be related with the image pixel type. The example uses by default "unsigned char", and your images seem to be "unsigned short". The ImageIO readers perform castings but just naive C-Style casting without any dynamic range adjustment. The simple solution is to change one line in the code of the example in order to manage "unsigned short". Please do the following: 1) go to /Insight/Examples/RawImageReaderViewer 2) edit the file itkRawImageReaderViewer.h 3) in line #36 change the line: typedef unsigned char PixelType; for typedef unsigned short PixelType; and recompile the example. That should get rid of the problem. Please let us know if that works for you, Thanks, Luis ==================================================== Alexandra La Cruz wrote: > Hi, > > I did the modification in line 145 about the dimension > .. > m_RawReader->SetFileDimensionality( 3 ); > > but I can read the data but in the disply I can not see any coherent images > and the aplication show an violation error > > someone know about this problem or what it is my error. I dowloaded an > example image in > The BrainWeb project home page : > > http://www.bic.mni.mcgill.ca/brainweb > > image data > BrainWeb download: PD ICBM normal 1mm pn3 rf20 > Modality=PD, Protocol=ICBM, Phantom_name=normal, Slice_thickness=1mm, > Noise=3%, INU=20% > MINC volume info: > image: signed__ short 0 to 4095 > image dimensions: zspace yspace xspace > dimension name length step start > -------------- ------ ---- ----- > zspace 181 1 -72 > yspace 217 1 -126 > xspace 181 1 -90 > Original MINC file size: 10.5 Mb > NDims = 3 > DimSize = 181 217 180 > ElementType = MET_UCHAR > ElementSpacing = 1.0 1.0 1.0 > ElementByteOrderMSB = False > ElementDataFile = brainweb1e1a10f20Rot10Tx15.raw > > > Greetings > ALC > > -------------------------------------------------------------- > Alexandra La Cruz > Institute of Computer Graphics and Algorithms > Vienna University of Technology > mailto:alacruz@cg.tuwien.ac.at > http://www.cg.tuwien.ac.at/staff/AlexandraLaCruz.html > Tel.: +43 1 58801-18670 Fax: +43 1 58801-18698 > -------------------------------------------------------------- > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From luis.ibanez@kitware.com Fri Jul 12 13:39:56 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 08:39:56 -0400 Subject: [Insight-users] Volume data viewer?? References: <1c7481c0b6.1c0b61c748@cs.unc.edu> Message-ID: <3D2ECE1C.6000209@kitware.com> As Julien said, FLTK 1.0.11 is the version that we use for most of the machines on the dashboard. However, FLTK 1.1 is stable (in itself) and can now be used with ITK examples. In fact, Julien did most of the work on adapting the CMakeLists.txt files in order to support both versions and also updated the FindFLTK.cmake file in CMake that takes care of locating FLTK files. We are using ITK + FLTK 1.1 without problems both in Linux and Windows now. ITK doesn't have any code specific for a FLTK version, so you don't have to modify any code when moving to FLTK 1.1. The look of the GUI however will be pretty different. Luis ================================================= jjomier@cs.unc.edu wrote: > Hi Ting, > > It's recommended to use FLTK 1.0.11 with ITK. > However, if you want to use a more recent version > you can. You may need to update CMake. > > Julien > > ----- Original Message ----- > From: "Ting Chen" > Date: Tuesday, July 9, 2002 4:11 pm > Subject: Re: [Insight-users] Volume data viewer?? > > >>Hi! Lius, >>which version of fltk will you recommend? It would be better that >>we can use >>a stable version of fltk so there will not be the trouble for >>changing the >>code from time to time. >>thanks a lot! >> >>ting >> >> From luis.ibanez@kitware.com Fri Jul 12 13:47:22 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 08:47:22 -0400 Subject: [Insight-users] Documentation for the Algorithms?? References: <01fe01c2266f$ff59dd60$aeb00286@wsigris.unituebingen.de> <3D29A3B4.4050306@kitware.com> <003001c22808$85f46130$aeb00286@wsigris.unituebingen.de> Message-ID: <3D2ECFDA.70207@kitware.com> Hi Zein, Most of the documentation for algorithms is available through the Doxygen pages. Some algorithms have more detailed documentation than other though. Most of the algorithms implemented in ITK are taken from the literature and for this reason you will usually find just a reference to a paper and some indications of how to manage the algorithm parameters. More than pretending to develop new techniques, ITK is intended to provide in a unified platform, well proved methodologies. This follows better the philosophy of being a "toolkit" Are you interested in any algorithm in particular ? Please let us know, we could probably point you to particular references. Thanks Luis =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 Zein Salah wrote: > Hello all, >=20 > Where can I find documentation for the Algorithms that are implemented = in > ITK???? >=20 >=20 > Thanks in advance for any help!! >=20 >=20 >=20 > Zein >=20 >=20 >=20 >=20 >=20 > ->8<------------->8<------------->8<------------->8<------------->8<--= ----- > ------>8<- > Zein I. Salah > Universit=E4t T=FCbingen, WSI-GRIS > Sand 14 > 72076 T=FCbingen > Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com > Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) >=20 >=20 >=20 >=20 >=20 >=20 > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users >=20 >=20 From luis.ibanez@kitware.com Fri Jul 12 14:05:26 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 09:05:26 -0400 Subject: [Insight-users] about MIThinPlateSplineRegistrator References: <001701c1cd80$71be7620$1223bd89@ee.cuhk.edu.hk> <3C9613F2.80506@kitware.com> <001501c22829$0b08ee20$1223bd89@ee.cuhk.edu.hk> Message-ID: <3D2ED416.1040605@kitware.com> Hi zhang, That's a good idea, this is a plausible approach for deformable registration. As you correctly notice, the missing piece is the SetParameter()/GetParameters() method in the KernelTransform. I'll add that and complete the example in: Examples/MutualInformationEuler2DRegistration for: MIThinPlateSplineRegistrator The choice of what the parameters are, is in some way arbitrary. We could go easily by taking the coordinates of the landmarks as the parameters of the transformation. For the case that you mention: 10*11 landmarks in 2D, that will result in a array of: 10 * 11 * 2 = 220 parameters. which will be just the sequence of {x,y} pairs of all the landmarks. These parameters will be passed to the optimizer. We could interpret the optimization as an iterative process in which each landmarks is moved slightly around its current position and the resulting transformation is computed in order to evaluate if the new mapping between the two images results in a better matching. You don't actually need access to the W matrix since the matrices are computed directly from the landmarks. Using the W matrix coefficients as parameters could be difficult since it is not clear that a variation of a W matrix is neccessarily a valid matrix for a new set of landmarks. Moving the landmarks and recomputing the W matrix for each new combination seems to be a more intuitive way to go. (and an easier one to implement :-) I'll add the Set/Get parameters to the Kernel transfom and get back to you soon. Thanks Luis ======================================== zhangzhijun wrote: > Dear Luis: > I want to put the TPS, EBS and VS transformation into the > multi-modal registration frame work > it is implemented following the 3 steps--- transform, similarity metric and > optimization, now since the > example of MIThinplatesplineRegistrator is not complete, I think I need do > the following work: > 1. Add an Initialization of the parameters for the TPS, in my case I want > to register two > 2D image of 181*217 dimensions, I choose totally 10*11 landmarks for > calculating of the TPS parameters, > After I calculate the W matrix, the itkKernelTransformation reorgnized the > Wmatrix into three part but the > 3 matrix members are all protected member, I find I can't have access to it. > I want to set the 226 parameters > and then use optimization method to do the optimization. > 2 also I don't know how the deviation in the itk is implemented and what's > the order for these 226 parameters. > because I need do an steepest descent optimization, so the order of every > parameter should follow some convention, > I don't know what is it. > > regards, > zhang zhijun > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From chenting@graphics.cis.upenn.edu Fri Jul 12 16:04:00 2002 From: chenting@graphics.cis.upenn.edu (Ting Chen) Date: Fri, 12 Jul 2002 10:04:00 -0500 Subject: [Insight-users] Volume data viewer?? Message-ID: <000601c229b5$5a734b80$5c02829e@otto.cis.upenn.edu> Thanks a lot! ting -----Original Message----- From: Luis Ibanez To: Ting Chen Cc: jjomier@cs.unc.edu ; insight-users@public.kitware.com Date: Friday, July 12, 2002 8:07 AM Subject: Re: [Insight-users] Volume data viewer?? > >As Julien said, FLTK 1.0.11 is the version that >we use for most of the machines on the dashboard. > >However, FLTK 1.1 is stable (in itself) and can >now be used with ITK examples. In fact, Julien >did most of the work on adapting the CMakeLists.txt >files in order to support both versions and also >updated the FindFLTK.cmake file in CMake that takes >care of locating FLTK files. > >We are using ITK + FLTK 1.1 without problems both >in Linux and Windows now. > >ITK doesn't have any code specific for a >FLTK version, so you don't have to modify any code >when moving to FLTK 1.1. > >The look of the GUI however will be pretty different. > > > > Luis > > > >================================================= > >jjomier@cs.unc.edu wrote: > > > Hi Ting, > > > > It's recommended to use FLTK 1.0.11 with ITK. > > However, if you want to use a more recent version > > you can. You may need to update CMake. > > > > Julien > > > > ----- Original Message ----- > > From: "Ting Chen" > > Date: Tuesday, July 9, 2002 4:11 pm > > Subject: Re: [Insight-users] Volume data viewer?? > > > > > >>Hi! Lius, > >>which version of fltk will you recommend? It would be better that > >>we can use > >>a stable version of fltk so there will not be the trouble for > >>changing the > >>code from time to time. > >>thanks a lot! > >> > >>ting > >> > >> > > > > >_______________________________________________ >Insight-users mailing list >Insight-users@public.kitware.com >http://public.kitware.com/mailman/listinfo/insight-users From cates@sci.utah.edu Fri Jul 12 16:47:50 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Fri, 12 Jul 2002 09:47:50 -0600 (MDT) Subject: [Insight-users] Problems with Watershed class In-Reply-To: <000801c221dc$169e4cb0$640a048a@sisifo> Message-ID: Hi, This problem is now fixed in the CVS repository. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Tue, 2 Jul 2002, Samuel Rodr=EDguez Bescos wrote: > Thanks Nils for your help. > > It runs OK now with warning instead errors. > > Thank again, > > Samuel > > > ----- Original Message ----- > From: Nils Hanssen > To: 'Samuel Rodr=EDguez Bescos' ; insight-users@public.kitware.com > Sent: Tuesday, July 02, 2002 3:16 PM > Subject: RE: [Insight-users] Problems with Watershed class > > > Hi Samuel, > > I have exactly the same double symbols when linking my project with the= WatershedImageFilter. > It's not the clean way, but until the problem is discovered, you can tu= rn these errors into warnings by including the "/FORCE:MULTIPLE" in the lin= king options of MSVC. > > Regards, > Nils > -----Original Message----- > From: insight-users-admin@public.kitware.com [mailto:insight-users-ad= min@public.kitware.com]On Behalf Of Samuel Rodr=EDguez Bescos > Sent: Tuesday, July 02, 2002 2:04 PM > To: insight-users@public.kitware.com > Subject: [Insight-users] Problems with Watershed class > > > Hello everybody. > > I'm developing an example based in GaussianFilter example in order to= segmentate a PNG Image with the watershed algorithm. In the Base class I h= ave defined a member of the WatershedImageFilter class and the estructure i= s the same of the Gaussian Filter example's. > > I have a linking problem the error lines are this: > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > -------------------Configuration: Segmentation - Win32 Debug---------= ----------- > Linking... > liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall i= tk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?= Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Seg= mentation.obj > liSegmentationConsole.obj : error LNK2005: "public: void __thiscall i= tk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquiv= alencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "public: unsigned long __t= hiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned in= t)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) = already defined in Segmentatio > n.obj > liSegmentationConsole.obj : error LNK2005: "protected: virtual void _= _thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(v= oid)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXX= Z) already defined in Segmenta > tion.obj > liSegmentationConsole.obj : error LNK2005: "protected: virtual void _= _thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basi= c_ostream > &,class itk::Indent)const " = (?PrintSelf@OneWayEquivalencyT > able@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@st= d@@VIndent@3@@Z) already defined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall i= tk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@Eq= uivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.ob= j > liSegmentationConsole.obj : error LNK2005: "public: void __thiscall i= tk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@= watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "public: unsigned long __t= hiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)cons= t " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defi= ned in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "protected: virtual void _= _thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" = (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already d= efined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "protected: virtual void _= _thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostr= eam > &,class itk::Indent)const " (?Prin= tSelf@EquivalencyTable@watersh > ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3= @@Z) already defined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "public: virtual void __th= iscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object= *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgress= Command@itk@@UAEXPAVObject@2@A > BVEventObject@2@@Z) already defined in Segmentation.obj > liSegmentationConsole.obj : error LNK2005: "public: virtual void __th= iscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object= const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelinePr= ogressCommand@itk@@UAEXPBVObje > ct@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thisca= ll itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)= " (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in= Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: void __thisca= ll itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayE= quivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long= __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigne= d int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI= @Z) already defined in Segment > ation.obj > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual vo= id __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformati= on(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@M= AEXXZ) already defined in Segm > entation.obj > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual vo= id __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::= basic_ostream > &,class itk::Indent)cons= t " (?PrintSelf@OneWayEquivale > ncyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@= @@std@@VIndent@3@@Z) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thisca= ll itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Ad= d@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentatio= n.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: void __thisca= ll itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTa= ble@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long= __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)= const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already = defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual vo= id __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(voi= d)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) alrea= dy defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual vo= id __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_= ostream > &,class itk::Indent)const " (?= PrintSelf@EquivalencyTable@wat > ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VInde= nt@3@@Z) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Ob= ject *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProg= ressCommand@itk@@UAEXPAVObject > @2@ABVEventObject@2@@Z) already defined in Segmentation.obj > liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void = __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Ob= ject const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipeli= neProgressCommand@itk@@UAEXPBV > Object@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscal= l itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)"= (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in = Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscal= l itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEq= uivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned= int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@= Z) already defined in Segmenta > tion.obj > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual voi= d __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformatio= n(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MA= EXXZ) already defined in Segme > ntation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual voi= d __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::b= asic_ostream > &,class itk::Indent)const= " (?PrintSelf@OneWayEquivalen > cyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@= @std@@VIndent@3@@Z) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscal= l itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add= @EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation= =2Eobj > liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscal= l itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTab= le@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long = __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)c= onst " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already d= efined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual voi= d __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void= )" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) alread= y defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual voi= d __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_o= stream > &,class itk::Indent)const " (?P= rintSelf@EquivalencyTable@wate > rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VInden= t@3@@Z) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void _= _thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Obj= ect *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgr= essCommand@itk@@UAEXPAVObject@ > 2@ABVEventObject@2@@Z) already defined in Segmentation.obj > liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void _= _thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Obj= ect const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelin= eProgressCommand@itk@@UAEXPBVO > bject@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of oth= er libs; use /NODEFAULTLIB:library > Debug/Segmentation.exe : fatal error LNK1169: one or more multiply de= fined symbols found > Error executing link.exe. > > Segmentation.exe - 37 error(s), 1 warning(s) > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DEND=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 > > I'm using the Beta Release and MSVC 6.0. > > Could anybody Know what is hapening and help me? > > Thanks in advance. > > Samuel > > > From srodrigu@gbt.tfo.upm.es Fri Jul 12 16:52:27 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Fri, 12 Jul 2002 17:52:27 +0200 Subject: [Insight-users] Problems with Watershed class References: Message-ID: <002601c229bc$1f314bb0$5f0a048a@sisifo> Thanks a lot!!! Samuel ----- Original Message ----- From: "Joshua Cates" To: "Samuel Rodríguez Bescos" Cc: "Nils Hanssen" ; Sent: Friday, July 12, 2002 5:47 PM Subject: Re: [Insight-users] Problems with Watershed class > Hi, > > This problem is now fixed in the CVS repository. > > > Josh. > > ______________________________ > Josh Cates > School of Computer Science > University of Utah > Email: cates@sci.utah.edu > Phone: (801) 587-7697 > URL: www.cs.utk.edu/~cates > > > On Tue, 2 Jul 2002, Samuel Rodríguez Bescos wrote: > > > Thanks Nils for your help. > > > > It runs OK now with warning instead errors. > > > > Thank again, > > > > Samuel > > > > > > ----- Original Message ----- > > From: Nils Hanssen > > To: 'Samuel Rodríguez Bescos' ; insight-users@public.kitware.com > > Sent: Tuesday, July 02, 2002 3:16 PM > > Subject: RE: [Insight-users] Problems with Watershed class > > > > > > Hi Samuel, > > > > I have exactly the same double symbols when linking my project with the WatershedImageFilter. > > It's not the clean way, but until the problem is discovered, you can turn these errors into warnings by including the "/FORCE:MULTIPLE" in the linking options of MSVC. > > > > Regards, > > Nils > > -----Original Message----- > > From: insight-users-admin@public.kitware.com [mailto:insight-users-admin@public.kitware.com]On Behalf Of Samuel Rodríguez Bescos > > Sent: Tuesday, July 02, 2002 2:04 PM > > To: insight-users@public.kitware.com > > Subject: [Insight-users] Problems with Watershed class > > > > > > Hello everybody. > > > > I'm developing an example based in GaussianFilter example in order to segmentate a PNG Image with the watershed algorithm. In the Base class I have defined a member of the WatershedImageFilter class and the estructure is the same of the Gaussian Filter example's. > > > > I have a linking problem the error lines are this: > > > > ================== > > > > -------------------Configuration: Segmentation - Win32 Debug-------------------- > > Linking... > > liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentatio > > n.obj > > liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmenta > > tion.obj > > liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivalencyT > > able@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VInd ent@3@@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@watersh > > ed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@2@A > > BVEventObject@2@@Z) already defined in Segmentation.obj > > liSegmentationConsole.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVObje > > ct@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segment > > ation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segm > > entation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivale > > ncyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@ VIndent@3@@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@wat > > ershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z ) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject > > @2@ABVEventObject@2@@Z) already defined in Segmentation.obj > > liSegmentationConsoleBase.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBV > > Object@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall itk::watershed::OneWayEquivalencyTable::Add(unsigned long,unsigned long)" (?Add@OneWayEquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall itk::watershed::OneWayEquivalencyTable::Flatten(void)" (?Flatten@OneWayEquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::OneWayEquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@OneWayEquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmenta > > tion.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@OneWayEquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segme > > ntation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::OneWayEquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@OneWayEquivalen > > cyTable@watershed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@V Indent@3@@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: bool __thiscall itk::watershed::EquivalencyTable::Add(unsigned long,unsigned long)" (?Add@EquivalencyTable@watershed@itk@@QAE_NKK@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: void __thiscall itk::watershed::EquivalencyTable::Flatten(void)" (?Flatten@EquivalencyTable@watershed@itk@@QAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: unsigned long __thiscall itk::watershed::EquivalencyTable::RecursiveLookup(unsigned int)const " (?RecursiveLookup@EquivalencyTable@watershed@itk@@QBEKI@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::UpdateOutputInformation(void)" (?UpdateOutputInformation@EquivalencyTable@watershed@itk@@MAEXXZ) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "protected: virtual void __thiscall itk::watershed::EquivalencyTable::PrintSelf(class std::basic_ostream > &,class itk::Indent)const " (?PrintSelf@EquivalencyTable@wate > > rshed@itk@@MBEXAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@VIndent@3@@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPAVObject@ > > 2@ABVEventObject@2@@Z) already defined in Segmentation.obj > > liSegmentationConsoleGUI.obj : error LNK2005: "public: virtual void __thiscall itk::WatershedMiniPipelineProgressCommand::Execute(class itk::Object const *,class itk::EventObject const &)" (?Execute@WatershedMiniPipelineProgressCommand@itk@@UAEXPBVO > > bject@2@ABVEventObject@2@@Z) already defined in Segmentation.obj > > LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library > > Debug/Segmentation.exe : fatal error LNK1169: one or more multiply defined symbols found > > Error executing link.exe. > > > > Segmentation.exe - 37 error(s), 1 warning(s) > > > > ===================END================================= > > > > I'm using the Beta Release and MSVC 6.0. > > > > Could anybody Know what is hapening and help me? > > > > Thanks in advance. > > > > Samuel > > > > > > From Uday Kurkure" Hi, I am using .raw images to read in and .pgm images to write out. How can I change read in and write out for DICOM images. Can some one tell me if ITK has got DICOM plug in and how to use it? Thanks. Uday Kurkure. _________________________________________________________ There is always a better job for you at Monsterindia.com. Go now http://monsterindia.rediff.com/jobs From brad.king@kitware.com Fri Jul 12 18:17:53 2002 From: brad.king@kitware.com (Brad King) Date: Fri, 12 Jul 2002 13:17:53 -0400 (EDT) Subject: [Insight-users] I might be dumb, but... In-Reply-To: <200207011522.43957@sendmail.mutz.com> Message-ID: Marc, > ... I can't get "make install" to work (cmake 1.2 p3, Linux). I do > ccmake, then "make", then "make install". But all that is installed is > libitkzlib and libitkpng. ITK currently does not support an install option. It is a library designed to be used by other developers. It is designed to be used directly from its build tree. > BTW: Why are there no config options for using the system zlib and a > system libpng if available? Why does every project have it's own zlib > and it's own build system? :-( The problem is that the system zlib and libpng might be the wrong version and produce problems we can't duplicate. Since the libraries are small and provide functionality that isn't system specific, there is no problem distributing the correct version with ITK code. -Brad From osentosk@mcs.anl.gov Fri Jul 12 18:21:10 2002 From: osentosk@mcs.anl.gov (Sarah Osentoski) Date: Fri, 12 Jul 2002 12:21:10 -0500 (CDT) Subject: [Insight-users] DICOM images. In-Reply-To: <20020712170123.12048.qmail@webmail27.rediffmail.com> Message-ID: I don't know of any DICOM plugin but we've been using the CTN libraries. The site seems to be down at this exact moment. But usually this link should work. ftp://ftp.erl.wustl.edu/pub/dicom/software/ctn/ Another link to it is here. http://wuerlim.wustl.edu/DICOM/ctn.html We've been using these libraries to load in the files and then using them to display stuff with VTK. I believe this should work for ITK as well. Sarah Osentoski On 12 Jul 2002, Uday Kurkure wrote: > > > Hi, > > I am using .raw images to read in and .pgm images to write out. > How can I change read in and write out for DICOM images. Can some > one tell me if ITK has got DICOM plug in and how to use it? > > Thanks. > > Uday Kurkure. > _________________________________________________________ > There is always a better job for you at Monsterindia.com. > Go now http://monsterindia.rediff.com/jobs > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From aylward@unc.edu Fri Jul 12 19:09:00 2002 From: aylward@unc.edu (Stephen R. Aylward) Date: Fri, 12 Jul 2002 14:09:00 -0400 Subject: [Insight-users] DICOM images. References: <20020712170123.12048.qmail@webmail27.rediffmail.com> Message-ID: <3D2F1B3C.3070505@unc.edu> Hi, A dicom reader will be checked in over the weekend. We don't have plans for a dicom writer at this time....but if you are interested in contributing one... Stephen Uday Kurkure wrote: > > > Hi, > > I am using .raw images to read in and .pgm images to write out. How can > I change read in and write out for DICOM images. Can some one tell me if > ITK has got DICOM plug in and how to use it? > > Thanks. > > Uday Kurkure. > _________________________________________________________ > There is always a better job for you at Monsterindia.com. > Go now http://monsterindia.rediff.com/jobs > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users -- =============================================== Dr. Stephen R. Aylward Assistant Professor of Radiology Adjunct Assistant Professor of Computer Science http://caddlab.rad.unc.edu aylward@unc.edu (919) 966-9695 From luis.ibanez@kitware.com Fri Jul 12 22:16:39 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 17:16:39 -0400 Subject: Fw: [Insight-users] How to start a new ITK project in Visual c++??? References: <00e301c22753$30cd1270$aeb00286@wsigris.unituebingen.de> Message-ID: <3D2F4737.9070402@kitware.com> This is a multi-part message in MIME format. --------------050806090303060000090309 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi Zein, When you take the code in: Insight/Example/SampleProject move it outside the ITK source tree and run CMake over it, you will be prompted for the location of the ITK Binary directory. Once you provide this directory, CMake will import from the CMakeCache.txt file all the options required for your project. Here is the list of files that should be created in the directory (note that is made a in-source built, that is, I asked CMake to put the binary of the sample project in the same source directory): -rw-r--r-- 1 ibanez users 67 Jul 12 16:58 ALL_BUILD -rw-r--r-- 1 ibanez users 3801 Jul 12 16:58 ALL_BUILD.dsp -rw-r--r-- 1 ibanez users 12014 Jul 12 16:58 CMakeCache.txt -rw-r--r-- 1 ibanez users 372 Jul 12 16:53 CMakeLists.txt drwxr-xr-x 2 ibanez users 0 Jul 12 16:58 Debug -rw-r--r-- 1 ibanez users 833 Jul 12 16:58 SampleProject.dsw -rwxr-xr-x 1 ibanez users 0 Jul 12 16:58 SampleProject.ncb -rw-r--r-- 1 ibanez users 3306 Jul 12 16:53 itkSampleProject.cxx -rw-r--r-- 1 ibanez users 8688 Jul 12 16:58 itkSampleProject.dsp and attached is a jpg screenshoot of how it looks once you open the workspace. Note that the ALL_BUILD is used for building the whole ITK. This is there because the small SampleProject depends on ITK. The example .cxx file does just a simple test in which a gaussian is put in an image. The "test passed" message is the normal final output of this program. Please let us know if you encounter any other problem. Thanks Luis ====================================== Zein Salah wrote: > Hi Luis, > > I have done all on the Insight/Examples/SampleProject. A workspace with > many file was built. I do not know what they mean. I built and ran the > resulted workspace. I got only the message "Test passed" > > Zein > > > --------------050806090303060000090309 Content-Type: image/jpeg; name="SampleProjectDSW.jpg" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="SampleProjectDSW.jpg" /9j/4AAQSkZJRgABAAEAYABgAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5jLiBWMS4wMQD/ 2wCEAAgFBgcGBQgHBgcJCAgJDBQNDAsLDBgREg4UHRkeHhwZHBsgJC4nICIrIhscKDYoKy8x MzQzHyY4PDgyPC4yMzEBCAkJDAoMFw0NFzEhHCExMTExMTExMTExMTExMTExMTExMTExMTEx MTExMTExMTExMTExMTExMTExMTExMTExMf/EAaIAAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYH CAkKCwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX0BAgMA BBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpD REVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaan qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foRAAIB AgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDTh JfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWG h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm 5+jp6vLz9PX29/j5+v/AABEIAUUBiAMBEQACEQEDEQH/2gAMAwEAAhEDEQA/APUo42kfYgGe TyQOnNZlEn2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aL AH2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F /wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xo sAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70 X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aLAH2aT+9F/wB/U/xosAfZpP70X/f1P8aL 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 KACgAoAKACgAoAKACgAoAKACgAoAKACgAoA//9k= --------------050806090303060000090309-- From vogel@cs.unc.edu Sat Jul 13 01:40:24 2002 From: vogel@cs.unc.edu (Suzanne Vogel) Date: Fri, 12 Jul 2002 20:40:24 -0400 Subject: [Insight-users] arrays of ITK objects w/ protected constructors Message-ID: <3D2F76F8.80305@cs.unc.edu> ** Is there a way to declare an array of references (not pointers) to ITK objects whose contructors are protected? Often constructors are protected to enable creation by ObjectFactory. Example: template class Foo : public LightObject { public: /* definitions necessary for creation by ObjectFactory */ ... protected: Foo(); ... } #include "itkFoo.h" void main(int argc, char **argv) { Foo *array1 = new Foo[N]; /* array of references - does not compile */ /* compiler error: cannot access protected Foo constructor */ Foo **array2 = new Foo*[N]; /* array of pointers - works but is ugly */ Foo array3 = new ((Foo::New())->GetReference)[N]; / *attempt at array of references - does not compile */ } Maybe I'll compromise by making an array of SmartPointers to Foo. :( Thanks, Suzanne From luis.ibanez@kitware.com Sat Jul 13 02:33:34 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 21:33:34 -0400 Subject: [Insight-users] arrays of ITK objects w/ protected constructors References: <3D2F76F8.80305@cs.unc.edu> Message-ID: <3D2F836E.6050206@kitware.com> Hi Suzanne, References in C++ can only be manipulated when initialized directly. That is, you cannot declare a "reference to float" just like: float & a; Since this is as dangerous as an unitialized pointer. References (as oposed to pointers) are supposed to be always pointing to a valid object. (and the compiler enforces this assumption). A reference must be declared as: float B; float & refToB = B; For the same reason, It is not possible to declare an array of references, like: typedef float & refFloat; refFloat myHopeLessArray[ 100 ]; Since each one of the array elements will be an uninitialized reference. This, so far, is independent of wheter the constructor is protected or not. --- It seems that the "ugly" solution of the array of pointers may be the best fit for what you are attempting. A couple of "typedefs" could help a bit to reduce the ugliness... for example: typedef Foo * FooPtr; FooPtr * manyFoos = new FooPtr[ N ]; SmartPointers could also do the trick but if you have any performance concerns it may be better to stick with raw pointers because every assigment on SmartPointers will cost a Mutex operation. Luis ========================================================= Suzanne Vogel wrote: > ** Is there a way to declare an array of references (not pointers) to > ITK objects whose contructors are protected? > > Often constructors are protected to enable creation by ObjectFactory. > > Example: > > template > class Foo : public LightObject > { public: > /* definitions necessary for creation by ObjectFactory */ > ... > protected: > Foo(); > ... > } > > #include "itkFoo.h" > void main(int argc, char **argv) > { Foo *array1 = new Foo[N]; > /* array of references - does not compile */ > /* compiler error: cannot access protected Foo constructor */ > > Foo **array2 = new Foo*[N]; > /* array of pointers - works but is ugly */ > > Foo array3 = new ((Foo::New())->GetReference)[N]; > / *attempt at array of references - does not compile */ > } > > Maybe I'll compromise by making an array of SmartPointers to Foo. :( > > Thanks, > Suzanne > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From vogel@cs.unc.edu Sat Jul 13 02:49:04 2002 From: vogel@cs.unc.edu (Suzanne Vogel) Date: Fri, 12 Jul 2002 21:49:04 -0400 Subject: [Insight-users] arrays of ITK objects w/ protected constructors References: <3D2F76F8.80305@cs.unc.edu> <3D2F836E.6050206@kitware.com> Message-ID: <3D2F8710.8090305@cs.unc.edu> Hi Luis and fellow ITK users, Thank you, Luis, I did learn something from your e-mail. However, I think I used the wrong terminology in my previous e-mail. Where I said "references," I mean "objects." I want to create an array of ITK *objects* (not references). However, the following syntax does not compile, where Foo is a typical ITK class derived from LightObject so that it can take advantage of creation by ObjectFactory: Foo array = new Foo[N]; /* Note: I'm not asking about "new Foo&[N]," which Luis thought I was */ I believe that this syntax does not compile because the constructor of these objects is protected, as required by ObjectFactory. The compiler error *is* something like "cannot access protected member Foo() of class Foo," indicating that the compiler is trying to call the Foo constructor. Suzanne Luis Ibanez wrote: > > Hi Suzanne, > > References in C++ can only be manipulated when initialized directly. > > That is, you cannot declare a "reference to float" just like: > > float & a; > > Since this is as dangerous as an unitialized pointer. > > References (as oposed to pointers) are supposed to be always > pointing to a valid object. (and the compiler enforces this > assumption). > > A reference must be declared as: > > float B; > float & refToB = B; > > For the same reason, It is not possible to declare an array of > references, like: > > typedef float & refFloat; > refFloat myHopeLessArray[ 100 ]; > > Since each one of the array elements will be an uninitialized > reference. > > This, so far, is independent of wheter the constructor is > protected or not. > > --- > > It seems that the "ugly" solution of the array of pointers > may be the best fit for what you are attempting. > > A couple of "typedefs" could help a bit to reduce the ugliness... > > for example: > > typedef Foo * FooPtr; > FooPtr * manyFoos = new FooPtr[ N ]; > > SmartPointers could also do the trick but if you have any > performance concerns it may be better to stick with raw > pointers because every assigment on SmartPointers will > cost a Mutex operation. > > > > Luis From luis.ibanez@kitware.com Sat Jul 13 04:16:09 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 12 Jul 2002 23:16:09 -0400 Subject: [Insight-users] about MIThinPlateSplineRegistrator References: <001701c1cd80$71be7620$1223bd89@ee.cuhk.edu.hk> <3C9613F2.80506@kitware.com> <001501c22829$0b08ee20$1223bd89@ee.cuhk.edu.hk> Message-ID: <3D2F9B79.7040401@kitware.com> Hi Zhang, The Set/Get Parameters methods have been added to the itkKernelTransform class. Please do a cvs update in order to get these modifications. The parameters are simply the sequence of coordinates components of the landmarks on the source space. A registration method will require (as you said) to initialize the transform by providing initial sets of landmarks in the source space and the target space. Then, only the landmarks in the source space will be adjusted in order to obtain a transform that optimizes the matching between the fixed and moving images. The choice of using the Source landmarks components as parameters is a bit arbitrary. It could have been the Target landmarks, or even both. Those options may be mathematically equivalent but they will probably result in performance differences during the exploration of the parameter space made by the optimizer. Please let us know if you encounter any problem with these changes. Thanks Luis =============================================== zhangzhijun wrote: > Dear Luis: > I want to put the TPS, EBS and VS transformation into the > multi-modal registration frame work > it is implemented following the 3 steps--- transform, similarity metric and > optimization, now since the > example of MIThinplatesplineRegistrator is not complete, I think I need do > the following work: > 1. Add an Initialization of the parameters for the TPS, in my case I want > to register two > 2D image of 181*217 dimensions, I choose totally 10*11 landmarks for > calculating of the TPS parameters, > After I calculate the W matrix, the itkKernelTransformation reorgnized the > Wmatrix into three part but the > 3 matrix members are all protected member, I find I can't have access to it. > I want to set the 226 parameters > and then use optimization method to do the optimization. > 2 also I don't know how the deviation in the itk is implemented and what's > the order for these 226 parameters. > because I need do an steepest descent optimization, so the order of every > parameter should follow some convention, > I don't know what is it. > > regards, > zhang zhijun > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From zjzhang@ee.cuhk.edu.hk Sat Jul 13 05:54:55 2002 From: zjzhang@ee.cuhk.edu.hk (zhangzhijun) Date: Sat, 13 Jul 2002 12:54:55 +0800 Subject: [Insight-users] about MIThinPlateSplineRegistrator References: <001701c1cd80$71be7620$1223bd89@ee.cuhk.edu.hk> <3C9613F2.80506@kitware.com> <001501c22829$0b08ee20$1223bd89@ee.cuhk.edu.hk> <3D2F9B79.7040401@kitware.com> Message-ID: <004e01c22a29$6f4ae440$1223bd89@ee.cuhk.edu.hk> hi Luis: I am wondering whether choosing of source landmark as parameters will be ok, the mutual information implemented in ITK using the stochastic gradient descent to find the optimal. The entropy and the joint entropy are estimated by using 2 groups of sampling points and for each iteration the sampling points in source and target image are chozen arbitrarily and are not same, so How could the target landmark be fixed and the source landmark be adjusted? regards, zhang zhijun ----- Original Message ----- From: "Luis Ibanez" To: "zhangzhijun" Cc: Sent: Saturday, July 13, 2002 11:16 AM Subject: Re: [Insight-users] about MIThinPlateSplineRegistrator > > Hi Zhang, > > The Set/Get Parameters methods have been > added to the itkKernelTransform class. > > Please do a cvs update in order to get these > modifications. > > The parameters are simply the sequence of > coordinates components of the landmarks on > the source space. > > A registration method will require (as you > said) to initialize the transform by providing > initial sets of landmarks in the source space > and the target space. Then, only the landmarks > in the source space will be adjusted in order > to obtain a transform that optimizes the matching > between the fixed and moving images. > > The choice of using the Source landmarks components > as parameters is a bit arbitrary. It could have been > the Target landmarks, or even both. Those options > may be mathematically equivalent but they will > probably result in performance differences during > the exploration of the parameter space made by the > optimizer. > > > Please let us know if you encounter any problem > with these changes. > > > Thanks > > Luis > > > =============================================== > > zhangzhijun wrote: > > > Dear Luis: > > I want to put the TPS, EBS and VS transformation into the > > multi-modal registration frame work > > it is implemented following the 3 steps--- transform, similarity metric and > > optimization, now since the > > example of MIThinplatesplineRegistrator is not complete, I think I need do > > the following work: > > 1. Add an Initialization of the parameters for the TPS, in my case I want > > to register two > > 2D image of 181*217 dimensions, I choose totally 10*11 landmarks for > > calculating of the TPS parameters, > > After I calculate the W matrix, the itkKernelTransformation reorgnized the > > Wmatrix into three part but the > > 3 matrix members are all protected member, I find I can't have access to it. > > I want to set the 226 parameters > > and then use optimization method to do the optimization. > > 2 also I don't know how the deviation in the itk is implemented and what's > > the order for these 226 parameters. > > because I need do an steepest descent optimization, so the order of every > > parameter should follow some convention, > > I don't know what is it. > > > > regards, > > zhang zhijun > > > > _______________________________________________ > > Insight-users mailing list > > Insight-users@public.kitware.com > > http://public.kitware.com/mailman/listinfo/insight-users > > > > > > > > > From luis.ibanez@kitware.com Sat Jul 13 14:23:28 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Sat, 13 Jul 2002 09:23:28 -0400 Subject: [Insight-users] arrays of ITK objects w/ protected constructors References: <3D2F76F8.80305@cs.unc.edu> <3D2F836E.6050206@kitware.com> <3D2F8710.8090305@cs.unc.edu> Message-ID: <3D3029D0.2000604@kitware.com> Hi Suzanne, Thanks for clarifying your question. I'm affraid that the array of objects cannot be declared. The constructors of many ITK classes have been declared protected with the full intention of preventing users from doing what you are trying to do. The reason is that by instantiating objects directly, (even if they are not in an array) you will not be able to introduce the use of alternative factories and you will also disrupt the mechanism of reference counting that allows these objects to be shared. Possible options for the array of objects are: 1) Array of raw pointers 2) Array of SmartPointers 3) Array of AutoPointers (though our autopointers are a bit nonstandard) If performance is a concern, (1) could be your best bet. Luis ============================================================= Suzanne Vogel wrote: > Hi Luis and fellow ITK users, > > Thank you, Luis, I did learn something from your e-mail. However, I > think I used the wrong terminology in my previous e-mail. Where I said > "references," I mean "objects." > > I want to create an array of ITK *objects* (not references). However, > the following syntax does not compile, where Foo is a typical ITK class > derived from LightObject so that it can take advantage of creation by > ObjectFactory: > > Foo array = new Foo[N]; > /* Note: I'm not asking about "new Foo&[N]," which Luis thought I was */ > > I believe that this syntax does not compile because the constructor of > these objects is protected, as required by ObjectFactory. The compiler > error *is* something like "cannot access protected member Foo() of class > Foo," indicating that the compiler is trying to call the Foo constructor. > > Suzanne > From luis.ibanez@kitware.com Sat Jul 13 14:10:19 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Sat, 13 Jul 2002 09:10:19 -0400 Subject: [Insight-users] about MIThinPlateSplineRegistrator References: <001701c1cd80$71be7620$1223bd89@ee.cuhk.edu.hk> <3C9613F2.80506@kitware.com> <001501c22829$0b08ee20$1223bd89@ee.cuhk.edu.hk> <3D2F9B79.7040401@kitware.com> <004e01c22a29$6f4ae440$1223bd89@ee.cuhk.edu.hk> Message-ID: <3D3026BB.30905@kitware.com> Hi Zhang, The choice of using the Source landmarks as parameters is totaly arbitrary. We can equally go with using the Target Landmarks, or even using both. Note however that this is independent of how the mututal information metric sample the images in order to estimate the joint probabilities. It is in fact independent of any metric used for registration. The MI sampling points are not related at all with the Source and Target landamarks, except for the fact that the landmarks define the transform, and the pairs of sampling points must be one the map of the other under the transform. A bit of experimentation with the ThinPlateSpline example could help to illustrate the implications of choosing the paramters as: 1) The coordinates of the Source landmarks 2) The coordinates of the Target landmarks 3) The coordinates of both Source and Target landmaks Since the Spline transform is in fact computed using the vectors relating one Source landmark with one Tartget landmark, the real thing to modify is this relative position and that can be done equally well by changing the source landmarks or the target landmark. (e.g. moving one source landmark to the right is equal to moving all the other target landmarks to the left. Option (3) is interesting if we consider this previous case, since the optimizer will probably succed in moving the only one source landmak instead of the N-1 target landmarks. However the price is to double the dimension of the parameter space, and henceforth double the time for registration. It could probably be convenient to add an option controlled by an enum, so the user can externally select how the parameters should be managed. The options would be the three enumerated above. That should be relatively simple to implement. Please let us know if you find this alternative reasonable. Thanks Luis =================================================== zhangzhijun wrote: > hi Luis: > > I am wondering whether choosing of source landmark as parameters > will be ok, > the mutual information implemented in ITK using the stochastic gradient > descent to find > the optimal. The entropy and the joint entropy are estimated by using 2 > groups of sampling > points and for each iteration the sampling points in source and target image > are chozen arbitrarily > and are not same, so How could the target landmark be fixed and the source > landmark > be adjusted? > > regards, > zhang zhijun > > From bhs@pvv.org Sun Jul 14 00:04:44 2002 From: bhs@pvv.org (Bjorn Hanch Sollie) Date: Sun, 14 Jul 2002 01:04:44 +0200 (CEST) Subject: [Insight-users] Mutual information Message-ID: I have a quesiton regarding the implementation of the mutual information registration metric in ITK. Are there any significant differences between the method as implemented in ITK and the description in the article by Viola & Wells it is based on? If there are, what has been changed, and in what way? I'm currently writing a thesis, and I need to document the mutual information method exactly in the way it is implemented in ITK. Thanks in advance, -Bjorn -- The History of the Universe Chapter 1: Bang! Chapter 2: Sss... Chapter 3: Crunch! The End From luis.ibanez@kitware.com Sun Jul 14 01:42:55 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Sat, 13 Jul 2002 20:42:55 -0400 Subject: [Insight-users] Mutual information References: Message-ID: <3D30C90F.6090603@kitware.com> Hi Bjorn, The MutualInformation metric in ITK was nicely implemented by Lydia Ng (@insightful.com). She put a lot of focus in following precisely the implementation described in the paper by Viola & Wells. She even went into Wells' disertation in order to make sure that the method was implemented as faithfully as possible. Any visible differences in the ITK implementation may be the consequence of the C++ Generic Programming style of ITK and the effort we put in making sure that the components of the Registration Framework were reusable. For example the use of Jacobians for computing Metric derivatives and the possibility of plugging in custom image interpolators are features that may seem unnecessary if you are interested in implementing *only* the method described in the paper by Viola & Wells. The decomposition of registration methods into reusable components in ITK makes possible to produce a large taxonomy of registration methods. The use of the RandomImageIterator for selecting the sampling points is also an ITK-ism. -- BTW If you are in need of an extra chapter for your thesis and you are not in a hurry for getting your degree... :-) I would suggest to study the problem of parameter tunning in MutualInfomation. That is, parameters such as: 1) Number of sampling points 2) Sigma of the normal distribution used for estimation 3) Learning rate of the gradient descent optimizer 4) Number of iterations 5) Number of levels for multiresolution 6) Scale factor between translations and rotations when an affine transform is used. We have observed that the selection of these parameters is a kind of "Art" that is learned in lengthly sleepless sessions of trial and error, which end up generating a Numeric Mitology and a series of Supersticions about which parameters should be changed and which not. Some of ITK users have expected MutualInformation to be a black box in which by plugging in two images magic results will appear at the output. They got frustrated when realize that a lot of parameter tunning is required in order to make it work. Those who are patient and methodic enough have succed in using this method for registration. It will be quite useful for the Medical Image community if somebody provide good rules about how to tune parameters for Mutual Information. The importance of parameter tunning has passed unnoticed during the dark pre-ITK ages because papers on medical image processing could be published without making the code available, and henceforth violating the basic scientific principle that a publication must provide enough detail to allow a third party to reproduce an experiment. Because the lack of the code and standard images, paper readers will not even attempt to reproduce an experience, and never got to the point of asking themselves what the order of magnitude should be for a learning rate... Modern journals like MEDIA, in which every issue is complemented with a CD will hopefully make possible to do more serious publications where: ideas + code + test data + parameters are actually provided to the readers anxious of using them in real life. Luis ==================================================== Bjorn Hanch Sollie wrote: > I have a quesiton regarding the implementation of the mutual > information registration metric in ITK. Are there any significant > differences between the method as implemented in ITK and the > description in the article by Viola & Wells it is based on? If there > are, what has been changed, and in what way? > > I'm currently writing a thesis, and I need to document the mutual > information method exactly in the way it is implemented in ITK. > > Thanks in advance, > > -Bjorn > From jjomier@cs.unc.edu Sun Jul 14 20:47:10 2002 From: jjomier@cs.unc.edu (Julien Jomier) Date: Sun, 14 Jul 2002 15:47:10 -0400 Subject: [Insight-users] Dicom Reader References: Message-ID: <004c01c22b6f$3e77ad70$69691398@Picasso> Hello all, We've just checked in a Dicom reader class. Files are in Code/IO and a correponding test is in Testing/Code/IO. This is only a 2D reader and if there are more than one image in the file the first one is loaded. Let us know if you have any problems with it. Thanks Thibaut and Julien From koen.vanleemput@hus.fi Mon Jul 15 12:28:51 2002 From: koen.vanleemput@hus.fi (Koen Van Leemput) Date: Mon, 15 Jul 2002 14:28:51 +0300 Subject: [Insight-users] Bug in itkPNGImageIO Message-ID: <200207151428.51348.koen.vanleemput@hus.fi> When writing a 3-D image with itkPNGImageIO, all the files "%s%d.png" con= tain=20 the same first slice of the data set. This appears to be causes by=20 PNGImageIO::WriteSlice(std::string& fileName, const void* buffer, unsigned long offset) in which the "offset" argument is not correctly handled. To replicate this error, use something like typedef itk::ImageFileWriter< ImageType > FileSinkType; typedef itk::PNGImageIO PNGWriterType; FileSinkType::Pointer fileSink =3D FileSinkType::New(); PNGWriterType::Pointer PNGWriter =3D PNGWriterType::New(); fileSink->SetImageIO( PNGWriter ); fileSink->SetFilePrefix( outputFilePrefix ); fileSink->SetInput( fileSource->GetOutput() ); fileSink->Write(); =20 This should be easy to fix... Koen --=20 *************************************************************************= ****=20 Koen Van Leemput, Ph.D. email : koen.vanleemput@hus.fi=20 Department of Radiology phone: +358 9 471 71331 =20 Helsinki University Central Hospital mobile: +358 9 471 62300 =20 P.O. Box 340 fax: +358 9 471 71342 = =20 FIN-00029 HUS = =20 FINLAND = =20 *************************************************************************= ****=20 From luis.ibanez@kitware.com Mon Jul 15 13:11:09 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 15 Jul 2002 08:11:09 -0400 Subject: [Insight-users] Re: Mutual information - Registration of US to CT References: Message-ID: <3D32BBDD.5010307@kitware.com> Hi Jon, 1) One way of avoiding to deal with the Learning Rate is not to use the GradientDescent optimizer but rather the RegularStep GradientDescent optimizer. The LR of the first one has the serious drawback that the length of the step is proportional to the derivative of the metric and it is pretty hard to get an idea of how this derivative will change as the registration evolves. For this reason, even if you select a good LR for the initial steps of the registration, the value may become inapropiate at any moment. In the same way, low gradient regions in the Metric can easily skyrocket the step, which is the defect of the Newton-like methods. The RegularStepGradientDescent on the other hand doesn't use the magnitude of the Metric gradient. It only uses its direction. The length of the Step is selected from an initial value that you provide. Every time that the direction changes more than 90 degrees, the step length is divided by two. A good initial value for Affine transforms is "0.1" which is equivalent to a moderate rotation of about 5 degrees. You can compare the behavior of the two optimizers in the: Testing/Code/Numerics directory, just run "itkNumericsTest" and select: a - itkGradientDescentOptimizerTest b - itkRegularStepGradientDescentOptimizerTest 2) The option of using the edge map of the CT in order to register it against the US is an interesting one. Note that MutualInformation will try maximize the matching of regions regardless of the intensities appearing on those regions. So, MI is immune to the basic differences of gray levels due to image modality, but it cannot do much is the images in questions don't actually have enough potential matching regions. If you observe that the edge map of CT results in a distribution of regions similar to the one in the US, that's an option worth to try. In general, any variation of the images that improves this region matching should result in a better registration. Note also that recent papers have proposed variations of the MI in which gradient information is added. It could be worth to add one of these metric variations to ITK since published results seem to be positive. 3) About the way in which pixels are mapped, here is a extract from the itkMeanSquaresImageToImageMetric.txx file: FixedIteratorType ti( fixedImage, this->GetFixedImageRegion() ); ... while(!ti.IsAtEnd()) { index = ti.GetIndex(); InputPointType inputPoint; fixedImage->TransformIndexToPhysicalPoint( index, inputPoint ); OutputPointType transformedPoint = m_Transform->TransformPoint( inputPoint ); if( m_Interpolator->IsInsideBuffer( transformedPoint ) ) { const RealType movingValue = m_Interpolator->Evaluate( transformedPoint ); const RealType fixedValue = ti.Get(); m_NumberOfPixelsCounted++; const RealType diff = movingValue - fixedValue; measure += diff * diff; } ++ti; } Note that pixels are take from a restricted region of the Fixed image. This region is provided by the user and can act as ROI. The position of every pixel is then mapped through the transform of the fixed image in order to get a point in physical space. The point is passed to the interpolator which is connected to the Moving image. 4) This also helps to answer your question about the initial position of the image. Every ITK image can have attached an arbitrary Transform. The transform indicates how the integer grid positions are mapped to physical space. The default transform is an Affine one, but you can use any other. So, if you know that your images are rotated 90 degrees due to patient position, you may compensate such rotation in the IndexToPhysicalTransform(). Same thing goes for initial known translations. This can be done both in the Fixed and Moving images. Note that this addinitional mapping is always done, so taking advantage of the corrections will not make your registration any slower. 5) A good criterion for selecting the translation scale is to use the size in millimeters (or the units you use for the slice spacing) of the whole volume. The goal is to make the coefficients of the translation to be on the [-1:1] range, which is about the same range expected for the rotation components. Otherwise, the optimizer will have to explore a space in which some dimensions (the translational ones) need steps of [100->500] while other need steps on the order of 0.1. Please let us know if that helps to answer some of your questions. Thanks Luis ============================== Jon Harald Kaspersen wrote: > Hi again Luis, > > We have been working on registration of US and CT as I talked about some > time ago. We (I) have some additional questions that you may be able to > help us with. In general, we have found it difficult to register US to > CT. The date we have used is from abdominal acquisitions, that is, CT/US > of Abdominal Aortic Aneurysms. > Here are the questions : > > 0) We have not yet succeeded with the CT(moving) to US(fixed) registration. > (simulations using the same CT (CT to tailedCT) and US volume, as well as > T2-MRI to T1-MRI works well) > We have used resampled versions of the CT and US volumes. Using small > learning rates (LR) > the registration sometimes moves in the "right direction", but it > doesn't reach the correct > position (very small steps (0.1-0.01), and often fluctuations as seen > from the iteration > observer). Increasing the number of levels, or the number of iterations > in each level > doesn't help. This is often the case when the LR is increased up to > certain threshold (around > 5e-3 to 1e-4), and the moving image moves to much when the LR > increases above this value. It could be that quality of the US-images > are to bad, > and we are not sure how the Mutual information handles the registration of > a image (CT with uniform regions) to its edge map (a blurred and noisy > edge is often > a good approximation of that can be seen in the US-images.) > > Also, from what you said in an earlier mail, (all) the pixels in the > fixed image (Pf) was mapped > to the moving image (Pm) using the current registration transform T, and > the metric > is then computed ( Metric ( all Pf, corresponding Pm = T(all Pf) ) ). > This can be seen for example in the implementation of the > MeanSquaresI2IMetric, but > reading the .h i was i bit confused: > > Pixel values are taken from the Moving image. Their positions are mapped > to the Fixed image and result in general in non-grid position on it. > Values at these non-grid position of the Fixed image are interpolated > using a user-selected interpolator > > > 1) Setting en arbitrary initial transform between the moving and the > fixed image in the > MultiResMIRegistration example: Can the "registration" method > SetInitialTansformParameters > be used to set an initial transform (translation and rotation) between > the corner-origin of > the two volumes when the preprocessor in the example first makes the > center the origin > in the two volumes (in addition to normalizing) ? If this is a problem, > how is it best > solved ? Can the pre and post transformation step be dropped altogether > (I understand that > its more convenient to register(rotate) relative to the center of the > volumes when both > modalities cover approx. the same region, but is there a more > fundamental reason? ) > > We have: > rfMf = rfMus = transformation matrix telling where the fixed/US-volume > is relative to the > patient reference frame. (maps points in the fixed/US-space to the > rf-space: Prf = rfMf * Pf) > rfMm = rfMct = transformation matrix telling where the moving/CT-volume > is relative to the > patient reference frame. (maps points in the moving/CT-space to the > rf-space: Prf = rfMm * Pm) > We can then find: > mMf = ctMus = transformation matrix telling where the fixed/US-volume is > relative to the > moving/CT-volume. (maps points in the fixed/US-space to the > moving/CT-space: Pm = mMf * Pf) > And we want to initiate the registration with the mMf matrix. > > Where: > Origin is in the corner of the first voxel (in the col, row, slice > order, x-axes = direction of > the first two voxels = col-direction) > Fixed = f = 3D Ultrasound > Moving = m = CT > Reference Frame = rf = Patient reference frame used by the tracking system. > > > 2) Is there a scientific way to determine the scale applied to the > translation parameter. > when doing a CT to US reg. ? and what is the purpose of this parameter ? > > > ======================================================== > Jon Harald Kaspersen Tel: +47 73 59 75 89 > Ph.D. Mechanical Engineering Mob: +47 93 03 65 90 > Senior Scientist Pager +47 96 84 29 94 > SINTEF Unimed - Ultralyd Fax: +47 73 59 78 73 > N-7465 Trondheim > NORWAY e-mail: Jon.H.Kaspersen@unimed.sintef.no > WEB: _http://www.us.unimed.sintef.no/_ > ======================================================== From luis.ibanez@kitware.com Mon Jul 15 13:50:52 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 15 Jul 2002 08:50:52 -0400 Subject: [Insight-users] Re: MutualinformationEulerRegistration project : Moving out of source tree" Message-ID: <3D32C52C.6040708@kitware.com> Hi Zhang, The warning you are getting in your project is a serious one: >> c:\insight\code\common\itkeventobject.h(132) : warning C4541: >> 'dynamic_cast' used on polymorphic type 'class itk::EventObject' with >> /GR-; unpredictable behavior may result It indicates that your VC++ workspace has RTTI (Run Time Type Information) disabled. This is a big problem since a lot of ITK funcionalities rely on this relatively new C++ feature. RTTI allow to discover at run time the real type of polymorphic classes. This is required for managing exceptions (in general C++) and it is also used by ITK in order to manage "itk::Events". Please make sure that your .dsw project has RTTI enabled. You can do this on the Project-->Settings-->C/C++ option. Make sure to enable "Exception Management" too. BUT... If you use CMake to set up your project, you will not have to deal with these details and could make a much better use of your time [:-)] A CMakeLists.txt file like the one provided as example of an external project in : Insight/Examples/SampleProject can be put outside the ITK source tree (that means, anywhere in your disk). It will ask you where the Binary and Source ITK trees are located, and from them it will import all the appropiate ITK settings, Including the ones for RTTI and Exceptions management. Please keep in mind that initial development of CMake was motivated by how hard it was to setup a project correctly using the traditional method (read: "hacking the Project/Settings options"). CMake also solved the problem of portability: Windows + Unix Spending some hours in getting familiar with CMake will save you a lot of time and effort. You can certainly live without CMake and configure the .dsw options by yourself but ... why to do that when you can use this time for writing papers, applying for grants or playing Go ? Please let us know if your find any more problems setting up your project. Thanks, Luis PS: the second warning : C4786: on the other hand is harmless. It just indicates that MS-VC++ is not capable of managing symbols longer than 254 characters when debugging. This is a VC++ limitation (not ITK related at all) that appears even when compiling standard STL classes. We use to disable this warning in our ITK projects. ========================================================== zhangzhijun wrote: Dear luis: Some questions: 1) What version of ITK (beta/cvs) ? It's almost newest cvs version, I download it one week before. 2) When you move the files to another directory: Does it compiles without warnings ? yes, there are some warnings. I attached the two warnings into 2 files and attached them in this mail. 3) The MetaImage files, are both the .mha and the .raw in the same directory ? Yes, there are one .raw image in my directory, but when I remove the raw file, the problem still exists. Can you open the same files when you use the project from ITK.dsw ? I can open the same file in the itk.dsw. 4) Do you have other copies of ITK installed in your system that can eventually be confusing your built ? I only have one itk installed. My guess is that the CMakeLists.txt file is not being modified correctly.... Luis ---------------------------------------------------------- zhangzhijun wrote: Dear Luis: I have run the program and want to modified it. When the project is in the itk.dsw, the program runs fine. but When I copy all of the files related with the mutualinformationeularregistration project into some other place and setup a new project. there is something mistake. This time when I run it and open a MetaImage, there will be an error in loading the image. I still havent' find the problem , do you have any hints on this? regards, zhang zhijun From luis.ibanez@kitware.com Mon Jul 15 13:56:11 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 15 Jul 2002 08:56:11 -0400 Subject: [Fwd: [Insight-users] Bug in itkPNGImageIO] Message-ID: <3D32C66B.9010206@kitware.com> This is a multi-part message in MIME format. --------------020003080101060406020308 Content-Type: message/rfc822; name="Re: [Insight-users] Bug in itkPNGImageIO" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="Re: [Insight-users] Bug in itkPNGImageIO" >From - Mon Jul 15 08:47:51 2002 X-Mozilla-Status2: 00000000 Message-ID: <3D32C3C6.2090504@kitware.com> Date: Mon, 15 Jul 2002 08:44:54 -0400 From: Luis Ibanez Organization: Kitware Inc. User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2.1) Gecko/20010901 X-Accept-Language: en-us MIME-Version: 1.0 To: Koen Van Leemput Subject: Re: [Insight-users] Bug in itkPNGImageIO References: <200207151428.51348.koen.vanleemput@hus.fi> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi Koen, Thanks a lot for your bug report. Following your description the bug was fixed. You can cvs-update in order to get the corrected version. Also the "%s%d.png" format was changed for "%s%03d.png" in order to generate numbers like: 001,002,003,..,010,..,100 instead of 1,2,3....,10,....,100 In this way, when filenames are ordered lexicografically the order is consistent with the position of slices in the image. An Example was added to: Insight/Examples/RawImageReadWrite it is called : itkRawImageReadWritePNG.cxx It reads a Raw image and dump all the slices into PNG files. This can be used as an utility in itself. Thanks again, Luis ====================================================== Koen Van Leemput wrote: > When writing a 3-D image with itkPNGImageIO, all the files "%s%d.png" contain > the same first slice of the data set. This appears to be causes by > > PNGImageIO::WriteSlice(std::string& fileName, const void* buffer, > unsigned long offset) > > in which the "offset" argument is not correctly handled. > > To replicate this error, use something like > > typedef itk::ImageFileWriter< ImageType > FileSinkType; > typedef itk::PNGImageIO PNGWriterType; > > FileSinkType::Pointer fileSink = FileSinkType::New(); > PNGWriterType::Pointer PNGWriter = PNGWriterType::New(); > > fileSink->SetImageIO( PNGWriter ); > fileSink->SetFilePrefix( outputFilePrefix ); > fileSink->SetInput( fileSource->GetOutput() ); > fileSink->Write(); > > This should be easy to fix... > > Koen > > > --------------020003080101060406020308-- From Linglan Edwards Mon Jul 15 15:37:18 2002 From: Linglan Edwards (Linglan Edwards) Date: Mon, 15 Jul 2002 10:37:18 -0400 (EDT) Subject: [Insight-users] Problems while trying to compile the examples. Message-ID: <200207151437.KAA10823@lhc.nlm.nih.gov> Hi, I set the BUILD_AUXILIARY and BUILD_EXAMPLES on, and generated the make file. I did a make. at various places including a lot of the examples, I got the following kind of messages: .... c++ -g -O2 -ftemplate-depth-50 -I/Development/ITK/Insight/Examples/MRIBiasCorrection -I/Development/ITK/Insight -I/Development/ITK/Insight/Code/Numerics -I/Development/ITK/Insight/Code/Common -I/Development/ITK/Insight/Code/IO -I/Development/ITK/Insight/Code/Numerics/vxl -I/Development/ITK/Insight/Code/Numerics/vxl -I/Development/ITK/Insight/Code/Numerics/vxl/vcl -I/Development/ITK/Insight/Code/Numerics/vxl/vcl -I/Development/ITK/Insight/Utilities/png -I/Development/ITK/Insight/Utilities/zlib -I/Development/ITK/Insight/Code/BasicFilters -I/Development/ITK/Insight/Code/Algorithms -I/Development/ITK/Insight/Code/Numerics/Statistics -I/Development/ITK/Insight/Auxiliary/MetaImage -I/Development/ITK/Insight/Examples/MRIBiasCorrection -D_PTHREADS -c /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector -o ImageCorrector.o c++: /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector: linker input file unused since linking not done ------- I found that a lot of the examples were not compiled. Then I went into the ./Examples directory, did a ccmake, and then 'make', and got the following error messages: ------- c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO /Examples/StreamedWatershedSegmentation/ParameterFileParser -L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFileP arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Parameter FileParser -o itkAntiAliasBinaryImageFilterExample c++: /Code/Common: No such file or directory c++: /Code/BasicFilters: No such file or directory c++: /Code/Algorithms: No such file or directory c++: /Code/Common: No such file or directory c++: /Code/IO: No such file or directory c++: /Examples/StreamedWatershedSegmentation/ParameterFileParser: No such file or directory *** Error code 1 The following command caused the error: c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO /Examples/StreamedWatershedSegmentation/ParameterFileParser -L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFileP arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Parameter FileParser -o itkAntiAliasBinaryImageFilterExample make: Fatal error: Command failed for target `itkAntiAliasBinaryImageFilterExample' Current working directory /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter *** Error code 1 The following command caused the error: make - all make: Fatal error: Command failed for target `default_target' Current working directory /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter *** Error code 1 The following command caused the error: cd /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter; make - default_target make: Fatal error: Command failed for target `default_target_AntiAliasBinaryImageFilter' Current working directory /Development/ITK/Insight/Examples *** Error code 1 The following command caused the error: make - all make: Fatal error: Command failed for target `default_target' ------- Did I miss something? Thanks, Linglan ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From luis.ibanez@kitware.com Mon Jul 15 17:14:45 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Mon, 15 Jul 2002 12:14:45 -0400 Subject: [Insight-users] Problems while trying to compile the examples. References: <200207151437.KAA10823@lhc.nlm.nih.gov> Message-ID: <3D32F4F5.9060703@kitware.com> Hi Linglan, Some examples have dependencies that condition if they are built or not. For example, some of them require FLTK to be installed, some others require VTK. By enabling just Auxiliary and Examples it is to expect that not all the examples will be compiled. About the second group or errors that you posted: It is not a good idea to call ccmake in subdirectories. (e.g. in Insight/Examples) since CMake will navigate downstream in the directory tree but not into the parent directory. Please invoke "ccmake" in the top build directory and give the source directory as parameter. For example, I usually build Insight in: ~/lib/Insight so, I cd to ~/lib/Insight and invoke ccmake ~/src/Insight given that ~/src/Insight is where the sources are. Then, I can call "make" at any level of the directory tree. The invokation of ccmake in subdirectories will result in inconsistent Makefiles since most of the project-wide settings will not be available at the subdirectory level. Please let us know if that helps, Thanks Luis =================================================== Linglan Edwards wrote: > Hi, > > I set the BUILD_AUXILIARY and BUILD_EXAMPLES on, and generated the make file. I > did a make. at various places including a lot of the examples, I got the > following kind of messages: > > .... > c++ -g -O2 -ftemplate-depth-50 > -I/Development/ITK/Insight/Examples/MRIBiasCorrection -I/Development/ITK/Insight > -I/Development/ITK/Insight/Code/Numerics -I/Development/ITK/Insight/Code/Common > -I/Development/ITK/Insight/Code/IO -I/Development/ITK/Insight/Code/Numerics/vxl > -I/Development/ITK/Insight/Code/Numerics/vxl > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > -I/Development/ITK/Insight/Utilities/png > -I/Development/ITK/Insight/Utilities/zlib > -I/Development/ITK/Insight/Code/BasicFilters > -I/Development/ITK/Insight/Code/Algorithms > -I/Development/ITK/Insight/Code/Numerics/Statistics > -I/Development/ITK/Insight/Auxiliary/MetaImage > -I/Development/ITK/Insight/Examples/MRIBiasCorrection -D_PTHREADS -c > /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector -o > ImageCorrector.o > c++: /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector: linker > input file unused since linking not done > > ------- > > I found that a lot of the examples were not compiled. Then I went into the > ./Examples directory, did a ccmake, and then 'make', and got the following error > messages: > ------- > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > /Examples/StreamedWatershedSegmentation/ParameterFileParser > -L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFileP > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics -lITKCommon > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics > -lITKIO > -Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Parameter > FileParser -o itkAntiAliasBinaryImageFilterExample > c++: /Code/Common: No such file or directory > c++: /Code/BasicFilters: No such file or directory > c++: /Code/Algorithms: No such file or directory > c++: /Code/Common: No such file or directory > c++: /Code/IO: No such file or directory > c++: /Examples/StreamedWatershedSegmentation/ParameterFileParser: No such file > or directory > *** Error code 1 > The following command caused the error: > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > /Examples/StreamedWatershedSegmentation/ParameterFileParser > -L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFileP > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics -lITKCommon > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon -lVXLNumerics > -lITKIO > -Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Parameter > FileParser -o itkAntiAliasBinaryImageFilterExample > make: Fatal error: Command failed for target > `itkAntiAliasBinaryImageFilterExample' > Current working directory > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > *** Error code 1 > The following command caused the error: > make - all > make: Fatal error: Command failed for target `default_target' > Current working directory > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > *** Error code 1 > The following command caused the error: > cd /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter; make - > default_target > make: Fatal error: Command failed for target > `default_target_AntiAliasBinaryImageFilter' > Current working directory /Development/ITK/Insight/Examples > *** Error code 1 > The following command caused the error: > make - all > make: Fatal error: Command failed for target `default_target' > ------- > > Did I miss something? > > Thanks, > > Linglan > ============================ > Linglan Edwards, Ph.D. > Senior Software Engineer > National Library of Medicine > Phone: (301) 435-3147 > Email: linglan@nlm.nih.gov > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > > From Linglan Edwards Mon Jul 15 19:35:13 2002 From: Linglan Edwards (Linglan Edwards) Date: Mon, 15 Jul 2002 14:35:13 -0400 (EDT) Subject: [Insight-users] Problems while trying to compile the examples. Message-ID: <200207151835.OAA26720@lhc.nlm.nih.gov> Thanks Luis, I did run ccmake to the Insight directory first. But I noticed that in some directories, (for example, in Examples/GaussianFilter, Examples/ImageRegistration), no Makefile was generated. Does that mean it couldn't find fltk or was it caused by something else? I have an older version of fltk installed (fltk-1.0.11, the only version I was able to compile), would that make any difference? Thanks, Linglan > >Hi Linglan, > >Some examples have dependencies that >condition if they are built or not. > >For example, some of them require FLTK >to be installed, some others require VTK. > >By enabling just Auxiliary and Examples it is to >expect that not all the examples will be compiled. > > >About the second group or errors that you posted: > >It is not a good idea to call ccmake in subdirectories. >(e.g. in Insight/Examples) since CMake will navigate >downstream in the directory tree but not into the >parent directory. > >Please invoke "ccmake" in the top build directory >and give the source directory as parameter. > >For example, I usually build Insight in: > > ~/lib/Insight > >so, I cd to ~/lib/Insight and invoke > > ccmake ~/src/Insight > >given that ~/src/Insight is where the sources are. > >Then, I can call "make" at any level of the >directory tree. > > >The invokation of ccmake in subdirectories will >result in inconsistent Makefiles since most of >the project-wide settings will not be available >at the subdirectory level. > > >Please let us know if that helps, > > > Thanks > > Luis > > > >=================================================== > >Linglan Edwards wrote: > > > Hi, > > > > I set the BUILD_AUXILIARY and BUILD_EXAMPLES on, and generated the >make file. I > > did a make. at various places including a lot of the examples, I got the > > following kind of messages: > > > > .... > > c++ -g -O2 -ftemplate-depth-50 > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection >-I/Development/ITK/Insight > > -I/Development/ITK/Insight/Code/Numerics >-I/Development/ITK/Insight/Code/Common > > -I/Development/ITK/Insight/Code/IO >-I/Development/ITK/Insight/Code/Numerics/vxl > > -I/Development/ITK/Insight/Code/Numerics/vxl > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > > -I/Development/ITK/Insight/Utilities/png > > -I/Development/ITK/Insight/Utilities/zlib > > -I/Development/ITK/Insight/Code/BasicFilters > > -I/Development/ITK/Insight/Code/Algorithms > > -I/Development/ITK/Insight/Code/Numerics/Statistics > > -I/Development/ITK/Insight/Auxiliary/MetaImage > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection -D_PTHREADS -c > > /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector -o > > ImageCorrector.o > > c++: >/Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector: linker > > input file unused since linking not done > > > > ------- > > > > I found that a lot of the examples were not compiled. Then I went >into the > > ./Examples directory, did a ccmake, and then 'make', and got the >following error > > messages: > > ------- > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > > /Examples/StreamedWatershedSegmentation/ParameterFileParser > > >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile P > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics >-lITKCommon > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon >-lVXLNumerics > > -lITKIO > > >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete r > > FileParser -o itkAntiAliasBinaryImageFilterExample > > c++: /Code/Common: No such file or directory > > c++: /Code/BasicFilters: No such file or directory > > c++: /Code/Algorithms: No such file or directory > > c++: /Code/Common: No such file or directory > > c++: /Code/IO: No such file or directory > > c++: /Examples/StreamedWatershedSegmentation/ParameterFileParser: No >such file > > or directory > > *** Error code 1 > > The following command caused the error: > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > > /Examples/StreamedWatershedSegmentation/ParameterFileParser > > >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile P > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics >-lITKCommon > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon >-lVXLNumerics > > -lITKIO > > >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete r > > FileParser -o itkAntiAliasBinaryImageFilterExample > > make: Fatal error: Command failed for target > > `itkAntiAliasBinaryImageFilterExample' > > Current working directory > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > > *** Error code 1 > > The following command caused the error: > > make - all > > make: Fatal error: Command failed for target `default_target' > > Current working directory > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > > *** Error code 1 > > The following command caused the error: > > cd /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter; make - > > default_target > > make: Fatal error: Command failed for target > > `default_target_AntiAliasBinaryImageFilter' > > Current working directory /Development/ITK/Insight/Examples > > *** Error code 1 > > The following command caused the error: > > make - all > > make: Fatal error: Command failed for target `default_target' > > ------- > > > > Did I miss something? > > > > Thanks, > > > > Linglan > > ============================ > > Linglan Edwards, Ph.D. > > Senior Software Engineer > > National Library of Medicine > > Phone: (301) 435-3147 > > Email: linglan@nlm.nih.gov > > > > _______________________________________________ > > Insight-users mailing list > > Insight-users@public.kitware.com > > http://public.kitware.com/mailman/listinfo/insight-users > > > > > > > > > > ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From mmalat@imaging.robarts.ca Mon Jul 15 19:57:40 2002 From: mmalat@imaging.robarts.ca (Mathieu Malaterre) Date: Mon, 15 Jul 2002 14:57:40 -0400 Subject: [Insight-users] Problems while trying to compile the examples. References: <200207151835.OAA26720@lhc.nlm.nih.gov> Message-ID: <3D331B24.8DB09688@imaging.robarts.ca> Hi Linglan, You can have a look to : Insight/Example/CMakeLists.txt. You'll see that : SUBDIRS(GaussianFilter) SUBDIRS(ImageRegistration) will only be build if only 3 options have been enable in the main CMakeLists.txt (Insight/CMakeLists.txt) IF(HAS_METAIMAGE) IF(HAS_FLTK) IF(HAS_FLTKIMAGEVIEWER) Could you check if one of them is set to 'NO' in this CMakeLists.txt file? HTH Mathieu Linglan Edwards wrote: > Thanks Luis, > > I did run ccmake to the Insight directory first. But I noticed that in some > directories, (for example, in Examples/GaussianFilter, > Examples/ImageRegistration), no Makefile was generated. Does that mean it > couldn't find fltk or was it caused by something else? I have an older version > of fltk installed (fltk-1.0.11, the only version I was able to compile), would > that make any difference? > > Thanks, > > Linglan > > > >Hi Linglan, > > > >Some examples have dependencies that > >condition if they are built or not. > > > >For example, some of them require FLTK > >to be installed, some others require VTK. > > > >By enabling just Auxiliary and Examples it is to > >expect that not all the examples will be compiled. > > > > > >About the second group or errors that you posted: > > > >It is not a good idea to call ccmake in subdirectories. > >(e.g. in Insight/Examples) since CMake will navigate > >downstream in the directory tree but not into the > >parent directory. > > > >Please invoke "ccmake" in the top build directory > >and give the source directory as parameter. > > > >For example, I usually build Insight in: > > > > ~/lib/Insight > > > >so, I cd to ~/lib/Insight and invoke > > > > ccmake ~/src/Insight > > > >given that ~/src/Insight is where the sources are. > > > >Then, I can call "make" at any level of the > >directory tree. > > > > > >The invokation of ccmake in subdirectories will > >result in inconsistent Makefiles since most of > >the project-wide settings will not be available > >at the subdirectory level. > > > > > >Please let us know if that helps, > > > > > > Thanks > > > > Luis > > > > > > > >=================================================== > > > >Linglan Edwards wrote: > > > > > Hi, > > > > > > I set the BUILD_AUXILIARY and BUILD_EXAMPLES on, and generated the > >make file. I > > > did a make. at various places including a lot of the examples, I got the > > > following kind of messages: > > > > > > .... > > > c++ -g -O2 -ftemplate-depth-50 > > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection > >-I/Development/ITK/Insight > > > -I/Development/ITK/Insight/Code/Numerics > >-I/Development/ITK/Insight/Code/Common > > > -I/Development/ITK/Insight/Code/IO > >-I/Development/ITK/Insight/Code/Numerics/vxl > > > -I/Development/ITK/Insight/Code/Numerics/vxl > > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl > > > -I/Development/ITK/Insight/Utilities/png > > > -I/Development/ITK/Insight/Utilities/zlib > > > -I/Development/ITK/Insight/Code/BasicFilters > > > -I/Development/ITK/Insight/Code/Algorithms > > > -I/Development/ITK/Insight/Code/Numerics/Statistics > > > -I/Development/ITK/Insight/Auxiliary/MetaImage > > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection -D_PTHREADS -c > > > /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector -o > > > ImageCorrector.o > > > c++: > >/Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector: linker > > > input file unused since linking not done > > > > > > ------- > > > > > > I found that a lot of the examples were not compiled. Then I went > >into the > > > ./Examples directory, did a ccmake, and then 'make', and got the > >following error > > > messages: > > > ------- > > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > > > /Examples/StreamedWatershedSegmentation/ParameterFileParser > > > > >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile > P > > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics > >-lITKCommon > > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon > >-lVXLNumerics > > > -lITKIO > > > > >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete > r > > > FileParser -o itkAntiAliasBinaryImageFilterExample > > > c++: /Code/Common: No such file or directory > > > c++: /Code/BasicFilters: No such file or directory > > > c++: /Code/Algorithms: No such file or directory > > > c++: /Code/Common: No such file or directory > > > c++: /Code/IO: No such file or directory > > > c++: /Examples/StreamedWatershedSegmentation/ParameterFileParser: No > >such file > > > or directory > > > *** Error code 1 > > > The following command caused the error: > > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common > > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO > > > /Examples/StreamedWatershedSegmentation/ParameterFileParser > > > > >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile > P > > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam > > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics > >-lITKCommon > > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon > >-lVXLNumerics > > > -lITKIO > > > > >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete > r > > > FileParser -o itkAntiAliasBinaryImageFilterExample > > > make: Fatal error: Command failed for target > > > `itkAntiAliasBinaryImageFilterExample' > > > Current working directory > > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > > > *** Error code 1 > > > The following command caused the error: > > > make - all > > > make: Fatal error: Command failed for target `default_target' > > > Current working directory > > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter > > > *** Error code 1 > > > The following command caused the error: > > > cd /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter; make - > > > default_target > > > make: Fatal error: Command failed for target > > > `default_target_AntiAliasBinaryImageFilter' > > > Current working directory /Development/ITK/Insight/Examples > > > *** Error code 1 > > > The following command caused the error: > > > make - all > > > make: Fatal error: Command failed for target `default_target' > > > ------- > > > > > > Did I miss something? > > > > > > Thanks, > > > > > > Linglan > > > ============================ > > > Linglan Edwards, Ph.D. > > > Senior Software Engineer > > > National Library of Medicine > > > Phone: (301) 435-3147 > > > Email: linglan@nlm.nih.gov > > > > > > _______________________________________________ > > > Insight-users mailing list > > > Insight-users@public.kitware.com > > > http://public.kitware.com/mailman/listinfo/insight-users > > > > > > > > > > > > > > > > > > > > ============================ > Linglan Edwards, Ph.D. > Senior Software Engineer > National Library of Medicine > Phone: (301) 435-3147 > Email: linglan@nlm.nih.gov > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users -- Malaterre, Mathieu The John P. Robarts Research Institute Imaging Research Laboratories http://www.imaging.robarts.ca/~mmalat From Linglan Edwards Mon Jul 15 20:34:28 2002 From: Linglan Edwards (Linglan Edwards) Date: Mon, 15 Jul 2002 15:34:28 -0400 (EDT) Subject: [Insight-users] Problems while trying to compile the examples. Message-ID: <200207151934.PAA00899@lhc.nlm.nih.gov> Hi Mathieu, I ran ccmake again and found that FLTKIMAGEVIEWER was not turned on. I changed that and all the Makefiles were generated. Thanks, Linglan >Date: Mon, 15 Jul 2002 14:57:40 -0400 >From: Mathieu Malaterre >X-Accept-Language: fr, en >MIME-Version: 1.0 >To: Linglan Edwards >CC: luis.ibanez@kitware.com, insight-users@public.kitware.com >Subject: Re: [Insight-users] Problems while trying to compile the examples. >Content-Transfer-Encoding: 7bit > >Hi Linglan, > You can have a look to : Insight/Example/CMakeLists.txt. You'll see that : > > SUBDIRS(GaussianFilter) > SUBDIRS(ImageRegistration) > >will only be build if only 3 options have been enable in the main CMakeLists.txt >(Insight/CMakeLists.txt) > >IF(HAS_METAIMAGE) > IF(HAS_FLTK) > IF(HAS_FLTKIMAGEVIEWER) > >Could you check if one of them is set to 'NO' in this CMakeLists.txt file? > >HTH >Mathieu > > >Linglan Edwards wrote: > >> Thanks Luis, >> >> I did run ccmake to the Insight directory first. But I noticed that in some >> directories, (for example, in Examples/GaussianFilter, >> Examples/ImageRegistration), no Makefile was generated. Does that mean it >> couldn't find fltk or was it caused by something else? I have an older version >> of fltk installed (fltk-1.0.11, the only version I was able to compile), would >> that make any difference? >> >> Thanks, >> >> Linglan >> > >> >Hi Linglan, >> > >> >Some examples have dependencies that >> >condition if they are built or not. >> > >> >For example, some of them require FLTK >> >to be installed, some others require VTK. >> > >> >By enabling just Auxiliary and Examples it is to >> >expect that not all the examples will be compiled. >> > >> > >> >About the second group or errors that you posted: >> > >> >It is not a good idea to call ccmake in subdirectories. >> >(e.g. in Insight/Examples) since CMake will navigate >> >downstream in the directory tree but not into the >> >parent directory. >> > >> >Please invoke "ccmake" in the top build directory >> >and give the source directory as parameter. >> > >> >For example, I usually build Insight in: >> > >> > ~/lib/Insight >> > >> >so, I cd to ~/lib/Insight and invoke >> > >> > ccmake ~/src/Insight >> > >> >given that ~/src/Insight is where the sources are. >> > >> >Then, I can call "make" at any level of the >> >directory tree. >> > >> > >> >The invokation of ccmake in subdirectories will >> >result in inconsistent Makefiles since most of >> >the project-wide settings will not be available >> >at the subdirectory level. >> > >> > >> >Please let us know if that helps, >> > >> > >> > Thanks >> > >> > Luis >> > >> > >> > >> >=================================================== >> > >> >Linglan Edwards wrote: >> > >> > > Hi, >> > > >> > > I set the BUILD_AUXILIARY and BUILD_EXAMPLES on, and generated the >> >make file. I >> > > did a make. at various places including a lot of the examples, I got the >> > > following kind of messages: >> > > >> > > .... >> > > c++ -g -O2 -ftemplate-depth-50 >> > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection >> >-I/Development/ITK/Insight >> > > -I/Development/ITK/Insight/Code/Numerics >> >-I/Development/ITK/Insight/Code/Common >> > > -I/Development/ITK/Insight/Code/IO >> >-I/Development/ITK/Insight/Code/Numerics/vxl >> > > -I/Development/ITK/Insight/Code/Numerics/vxl >> > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl >> > > -I/Development/ITK/Insight/Code/Numerics/vxl/vcl >> > > -I/Development/ITK/Insight/Utilities/png >> > > -I/Development/ITK/Insight/Utilities/zlib >> > > -I/Development/ITK/Insight/Code/BasicFilters >> > > -I/Development/ITK/Insight/Code/Algorithms >> > > -I/Development/ITK/Insight/Code/Numerics/Statistics >> > > -I/Development/ITK/Insight/Auxiliary/MetaImage >> > > -I/Development/ITK/Insight/Examples/MRIBiasCorrection -D_PTHREADS -c >> > > /Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector -o >> > > ImageCorrector.o >> > > c++: >> >/Development/ITK/Insight/Examples/MRIBiasCorrection/ImageCorrector: linker >> > > input file unused since linking not done >> > > >> > > ------- >> > > >> > > I found that a lot of the examples were not compiled. Then I went >> >into the >> > > ./Examples directory, did a ccmake, and then 'make', and got the >> >following error >> > > messages: >> > > ------- >> > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common >> > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO >> > > /Examples/StreamedWatershedSegmentation/ParameterFileParser >> > > >> >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile >> P >> > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam >> > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics >> >-lITKCommon >> > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon >> >-lVXLNumerics >> > > -lITKIO >> > > >> >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete >> r >> > > FileParser -o itkAntiAliasBinaryImageFilterExample >> > > c++: /Code/Common: No such file or directory >> > > c++: /Code/BasicFilters: No such file or directory >> > > c++: /Code/Algorithms: No such file or directory >> > > c++: /Code/Common: No such file or directory >> > > c++: /Code/IO: No such file or directory >> > > c++: /Examples/StreamedWatershedSegmentation/ParameterFileParser: No >> >such file >> > > or directory >> > > *** Error code 1 >> > > The following command caused the error: >> > > c++ -g -O2 itkAntiAliasBinaryImageFilterExample.o /Code/Common >> > > /Code/BasicFilters /Code/Algorithms /Code/Common /Code/IO >> > > /Examples/StreamedWatershedSegmentation/ParameterFileParser >> > > >> >-L/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/ParameterFile >> P >> > > arser -lVXLNumerics -lITKCommon -lITKBasicFilters -lCio -lm -lparam >> > > -lITKBasicFilters -lITKCommon -lVXLNumerics -lITKIO -lVXLNumerics >> >-lITKCommon >> > > -lITKBasicFilters -lCio -lm -lparam -lITKBasicFilters -lITKCommon >> >-lVXLNumerics >> > > -lITKIO >> > > >> >-Wl,-R,/Development/ITK/Insight/Examples/StreamedWatershedSegmentation/Paramete >> r >> > > FileParser -o itkAntiAliasBinaryImageFilterExample >> > > make: Fatal error: Command failed for target >> > > `itkAntiAliasBinaryImageFilterExample' >> > > Current working directory >> > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter >> > > *** Error code 1 >> > > The following command caused the error: >> > > make - all >> > > make: Fatal error: Command failed for target `default_target' >> > > Current working directory >> > > /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter >> > > *** Error code 1 >> > > The following command caused the error: >> > > cd /Development/ITK/Insight/Examples/AntiAliasBinaryImageFilter; make - >> > > default_target >> > > make: Fatal error: Command failed for target >> > > `default_target_AntiAliasBinaryImageFilter' >> > > Current working directory /Development/ITK/Insight/Examples >> > > *** Error code 1 >> > > The following command caused the error: >> > > make - all >> > > make: Fatal error: Command failed for target `default_target' >> > > ------- >> > > >> > > Did I miss something? >> > > >> > > Thanks, >> > > >> > > Linglan >> > > ============================ >> > > Linglan Edwards, Ph.D. >> > > Senior Software Engineer >> > > National Library of Medicine >> > > Phone: (301) 435-3147 >> > > Email: linglan@nlm.nih.gov >> > > >> > > _______________________________________________ >> > > Insight-users mailing list >> > > Insight-users@public.kitware.com >> > > http://public.kitware.com/mailman/listinfo/insight-users >> > > >> > > >> > >> > >> > >> > >> > >> > >> >> ============================ >> Linglan Edwards, Ph.D. >> Senior Software Engineer >> National Library of Medicine >> Phone: (301) 435-3147 >> Email: linglan@nlm.nih.gov >> >> _______________________________________________ >> Insight-users mailing list >> Insight-users@public.kitware.com >> http://public.kitware.com/mailman/listinfo/insight-users > >-- >Malaterre, Mathieu >The John P. Robarts Research Institute >Imaging Research Laboratories >http://www.imaging.robarts.ca/~mmalat > > > > ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From Linglan Edwards Tue Jul 16 18:28:35 2002 From: Linglan Edwards (Linglan Edwards) Date: Tue, 16 Jul 2002 13:28:35 -0400 (EDT) Subject: [Insight-users] Error message related to fltk. Message-ID: <200207161728.NAA03075@lhc.nlm.nih.gov> Hi, I got the following error message when I tried to compile Insight. It seems to have problems with the fltk library I compiled. (I used fltk-1.0.11, and I had no trouble compiling and installing it.) Has anybody have similar problem before? Any suggestions? Thanks! Linglan ---------> cut here <-------------- Undefined first referenced symbol in file XKeycodeToKeysym /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawPoint /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawRectangle /home/linglan/lib/libfltk.a(fl_overlay.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFreeColors /home/linglan/lib/libfltk.a(fl_color.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFreePixmap /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XBell /home/linglan/lib/libfltk.a(fl_ask.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XOpenDisplay /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XQueryColors /home/linglan/lib/libfltk.a(fl_color.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XNextEvent /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XChangeProperty /home/linglan/lib/libfltk.a(Fl_arg.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGetWindowProperty /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCopyArea /home/linglan/lib/libfltk.a(fl_scroll_area.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetRegion /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XClearWindow /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreatePixmapCursor /home/linglan/lib/libfltk.a(fl_cursor.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XListFonts /home/linglan/lib/libfltk.a(fl_font.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawString /home/linglan/lib/libfltk.a(fl_font.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDestroyRegion /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XUngrabKeyboard /home/linglan/lib/libfltk.a(Fl_grab.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XIntersectRegion /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGetVisualInfo /home/linglan/lib/libfltk.a(Fl_visual.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFlush /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetTransientForHint /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateRegion /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XUngrabPointer /home/linglan/lib/libfltk.a(Fl_grab.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGrabKeyboard /home/linglan/lib/libfltk.a(Fl_grab.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetWMHints /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XInstallColormap /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XClipBox /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGetDefault /home/linglan/lib/libfltk.a(Fl_get_system_colors.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGetErrorDatabaseText /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDisplayName /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDefineCursor /home/linglan/lib/libfltk.a(fl_cursor.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XLoadQueryFont /home/linglan/lib/libfltk.a(fl_font.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFreeCursor /home/linglan/lib/libfltk.a(fl_cursor.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetTSOrigin /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XAllocColor /home/linglan/lib/libfltk.a(fl_color.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetStipple /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XQLength /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawLine /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGrabPointer /home/linglan/lib/libfltk.a(Fl_grab.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XEventsQueued /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XRecolorCursor /home/linglan/lib/libfltk.a(fl_cursor.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetForeground /home/linglan/lib/libfltk.a(fl_color.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XKeysymToKeycode /home/linglan/lib/libfltk.a(Fl_get_key.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XMapWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFree /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XLookupString /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetFont /home/linglan/lib/libfltk.a(fl_font.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDestroyWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XMoveResizeWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSendEvent /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFillPolygon /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFillRectangle /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFillArc /home/linglan/lib/libfltk.a(fl_vertex.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XVisualIDFromVisual /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XConvertSelection /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XUnmapWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XRectInRegion /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XRefreshKeyboardMapping /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawArc /home/linglan/lib/libfltk.a(fl_vertex.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateFontCursor /home/linglan/lib/libfltk.a(fl_cursor.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateColormap /home/linglan/lib/libfltk.a(Fl_visual.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCloseDisplay /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XQueryKeymap /home/linglan/lib/libfltk.a(Fl_get_key.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetClipMask /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XMoveWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateGC /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XParseGeometry /home/linglan/lib/libfltk.a(Fl_arg.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XParseColor /home/linglan/lib/libfltk.a(Fl_get_system_colors.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetWMNormalHints /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XFreeFont /home/linglan/lib/libfltk.a(fl_font.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XMapRaised /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetSelectionOwner /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XKeysymToString /home/linglan/lib/libfltk.a(fl_shortcut.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetErrorHandler /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XQueryPointer /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateSimpleWindow /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetFunction /home/linglan/lib/libfltk.a(fl_overlay.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XUnionRectWithRegion /home/linglan/lib/libfltk.a(Fl.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetFillStyle /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawPoints /home/linglan/lib/libfltk.a(fl_vertex.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XGetErrorText /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XWindowEvent /home/linglan/lib/libfltk.a(fl_scroll_area.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XSetIOErrorHandler /home/linglan/lib/libfltk.a(Fl_x.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XCreateBitmapFromData /home/linglan/lib/libfltk.a(Fl_Bitmap.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XDrawLines /home/linglan/lib/libfltk.a(fl_rect.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) XInternAtom /home/linglan/lib/libfltk.a(Fl_cutpaste.o) (symbol belongs to implicit dependency /usr/lib/libX11.so.4) ld: fatal: Symbol referencing errors. No output written to SurfaceGenerator collect2: ld returned 1 exit status *** Error code 1 The following command caused the error: c++ -g -O2 -ftemplate-depth-50 SurfaceGeneratorGUI.o CriticalPoint.o SurfaceGeneratorBase.o SurfaceGenerator.o main.o -L/Development/ITK/Insight/Utilities/zlib -L/Development/ITK/Insight/Utilities/png -L/Development/ITK/Insight/Code/Common -L/Development/ITK/Insight/Code/IO -L/Development/ITK/Insight/Code/Numerics/vxl -L/Development/ITK/Insight/Code/BasicFilters -L/Development/ITK/Insight/Code/Algorithms -L/Development/ITK/Insight/Auxiliary/FltkImageViewer -L/Development/ITK/Insight/Auxiliary/MetaImage/IView -L/Development/ITK/Insight/Examples/SurfaceGenerator -L/home/linglan/lib -lpthread -ldl -lVXLNumerics -lITKCommon -lITKBasicFilters -lm -lITKCommon -lITKBasicFilters -lITKIO -lIView -litkpng -litkzlib -lFltkImageViewer -lfltk -lGL -lGLU -lm -lpthread -ldl -lVXLNumerics -lITKCommon -lITKBasicFilters -lm -lITKCommon -lITKBasicFilters -lITKIO -lIView -litkpng -litkzlib -lFltkImageViewer -lfltk -lGL -lGLU -lm -Wl,-R,/Development/ITK/Insight/Utilities/zlib:/Development/ITK/Insight/Utilitie s/png:/Development/ITK/Insight/Code/Common:/Development/ITK/Insight/Code/IO:/Dev elopment/ITK/Insight/Code/Numerics/vxl:/Development/ITK/Insight/Code/BasicFilter s:/Development/ITK/Insight/Code/Algorithms:/Development/ITK/Insight/Auxiliary/Fl tkImageViewer:/Development/ITK/Insight/Auxiliary/MetaImage/IView:/Development/IT K/Insight/Examples/SurfaceGenerator:/home/linglan/lib -o SurfaceGenerator make: Fatal error: Command failed for target `SurfaceGenerator' Current working directory /Development/ITK/Insight/Examples/SurfaceGenerator *** Error code 1 The following command caused the error: make - all make: Fatal error: Command failed for target `default_target' Current working directory /Development/ITK/Insight/Examples/SurfaceGenerator *** Error code 1 The following command caused the error: cd /Development/ITK/Insight/Examples/SurfaceGenerator; make - default_target make: Fatal error: Command failed for target `default_target_SurfaceGenerator' Current working directory /Development/ITK/Insight/Examples *** Error code 1 The following command caused the error: make - all make: Fatal error: Command failed for target `default_target' Current working directory /Development/ITK/Insight/Examples *** Error code 1 The following command caused the error: cd /Development/ITK/Insight/Examples; make - default_target make: Fatal error: Command failed for target `default_target_Examples' Current working directory /Development/ITK/Insight *** Error code 1 The following command caused the error: make - all make: Fatal error: Command failed for target `default_target' -------> cut here <----------- ============================ Linglan Edwards, Ph.D. Senior Software Engineer National Library of Medicine Phone: (301) 435-3147 Email: linglan@nlm.nih.gov From jjomier@cs.unc.edu Tue Jul 16 18:42:43 2002 From: jjomier@cs.unc.edu (Julien Jomier) Date: Tue, 16 Jul 2002 13:42:43 -0400 Subject: [Insight-users] Error message related to fltk. References: <200207161728.NAA03075@lhc.nlm.nih.gov> Message-ID: <00cc01c22cf0$30df50f0$69691398@Picasso> This is a multi-part message in MIME format. ------=_NextPart_000_00C9_01C22CCE.A996E980 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi Linglan, Seems like X Libraries are not found. you may add this line in your FindFLTK.cmake (CMake/Modules) SET( FLTK_LIBRARY ${FLTK_BASE_LIBRARY} ${FLTK_GL_LIBRARY} ${FLTK_FORMS_LIBRARY} ) by SET( FLTK_LIBRARY ${FLTK_BASE_LIBRARY} ${FLTK_GL_LIBRARY} ${FLTK_FORMS_LIBRARY} ${CMAKE_X_LIBS} -lm) Note that this is not going to work under Windows. What version of CMake are you using ? Hope this helps Attached the FindFLTK.cmake modified for CMake 1.4 Julien ----- Original Message ----- From: "Linglan Edwards" To: Sent: Tuesday, July 16, 2002 1:28 PM Subject: [Insight-users] Error message related to fltk. > Hi, > > I got the following error message when I tried to compile Insight. It seems to > have problems with the fltk library I compiled. (I used fltk-1.0.11, and I had > no trouble compiling and installing it.) Has anybody have similar problem > before? Any suggestions? > > Thanks! > > Linglan > ---------> cut here <-------------- > Undefined first referenced > symbol in file > XKeycodeToKeysym /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawPoint /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawRectangle /home/linglan/lib/libfltk.a(fl_overlay.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFreeColors /home/linglan/lib/libfltk.a(fl_color.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFreePixmap /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XBell /home/linglan/lib/libfltk.a(fl_ask.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XOpenDisplay /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XQueryColors /home/linglan/lib/libfltk.a(fl_color.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XNextEvent /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XChangeProperty /home/linglan/lib/libfltk.a(Fl_arg.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGetWindowProperty /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XCopyArea > /home/linglan/lib/libfltk.a(fl_scroll_area.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XSetRegion /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XClearWindow > /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XCreatePixmapCursor /home/linglan/lib/libfltk.a(fl_cursor.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XListFonts /home/linglan/lib/libfltk.a(fl_font.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawString /home/linglan/lib/libfltk.a(fl_font.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDestroyRegion /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XUngrabKeyboard /home/linglan/lib/libfltk.a(Fl_grab.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XIntersectRegion /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGetVisualInfo /home/linglan/lib/libfltk.a(Fl_visual.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFlush /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XSetTransientForHint /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateRegion /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XUngrabPointer /home/linglan/lib/libfltk.a(Fl_grab.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGrabKeyboard /home/linglan/lib/libfltk.a(Fl_grab.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetWMHints /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XInstallColormap > /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XClipBox /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGetDefault > /home/linglan/lib/libfltk.a(Fl_get_system_colors.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XGetErrorDatabaseText /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XDisplayName /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XDefineCursor /home/linglan/lib/libfltk.a(fl_cursor.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XLoadQueryFont /home/linglan/lib/libfltk.a(fl_font.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFreeCursor /home/linglan/lib/libfltk.a(fl_cursor.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetTSOrigin /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XAllocColor /home/linglan/lib/libfltk.a(fl_color.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetStipple /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XQLength /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawLine /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGrabPointer /home/linglan/lib/libfltk.a(Fl_grab.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XEventsQueued /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XRecolorCursor /home/linglan/lib/libfltk.a(fl_cursor.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetForeground /home/linglan/lib/libfltk.a(fl_color.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XKeysymToKeycode /home/linglan/lib/libfltk.a(Fl_get_key.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XMapWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XFree /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XLookupString /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XSetFont /home/linglan/lib/libfltk.a(fl_font.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDestroyWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XMoveResizeWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XSendEvent /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFillPolygon /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFillRectangle /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XFillArc /home/linglan/lib/libfltk.a(fl_vertex.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XVisualIDFromVisual /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XConvertSelection /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XUnmapWindow /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XRectInRegion /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XRefreshKeyboardMapping /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawArc /home/linglan/lib/libfltk.a(fl_vertex.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateFontCursor /home/linglan/lib/libfltk.a(fl_cursor.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateColormap /home/linglan/lib/libfltk.a(Fl_visual.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XCloseDisplay /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XQueryKeymap /home/linglan/lib/libfltk.a(Fl_get_key.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetClipMask /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XMoveWindow /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateGC > /home/linglan/lib/libfltk.a(Fl_Menu_Window.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XParseGeometry /home/linglan/lib/libfltk.a(Fl_arg.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XParseColor > /home/linglan/lib/libfltk.a(Fl_get_system_colors.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XSetWMNormalHints /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XFreeFont /home/linglan/lib/libfltk.a(fl_font.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XMapRaised /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XSetSelectionOwner /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XKeysymToString /home/linglan/lib/libfltk.a(fl_shortcut.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetErrorHandler /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XQueryPointer /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateSimpleWindow /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XSetFunction /home/linglan/lib/libfltk.a(fl_overlay.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XUnionRectWithRegion /home/linglan/lib/libfltk.a(Fl.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XSetFillStyle /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawPoints /home/linglan/lib/libfltk.a(fl_vertex.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XGetErrorText /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XWindowEvent > /home/linglan/lib/libfltk.a(fl_scroll_area.o) (symbol belongs to implicit > dependency /usr/lib/libX11.so.4) > XSetIOErrorHandler /home/linglan/lib/libfltk.a(Fl_x.o) (symbol > belongs to implicit dependency /usr/lib/libX11.so.4) > XCreateBitmapFromData /home/linglan/lib/libfltk.a(Fl_Bitmap.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XDrawLines /home/linglan/lib/libfltk.a(fl_rect.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > XInternAtom /home/linglan/lib/libfltk.a(Fl_cutpaste.o) > (symbol belongs to implicit dependency /usr/lib/libX11.so.4) > ld: fatal: Symbol referencing errors. No output written to SurfaceGenerator > collect2: ld returned 1 exit status > *** Error code 1 > The following command caused the error: > c++ -g -O2 -ftemplate-depth-50 SurfaceGeneratorGUI.o CriticalPoint.o > SurfaceGeneratorBase.o SurfaceGenerator.o main.o > -L/Development/ITK/Insight/Utilities/zlib > -L/Development/ITK/Insight/Utilities/png -L/Development/ITK/Insight/Code/C ommon > -L/Development/ITK/Insight/Code/IO -L/Development/ITK/Insight/Code/Numeric s/vxl > -L/Development/ITK/Insight/Code/BasicFilters > -L/Development/ITK/Insight/Code/Algorithms > -L/Development/ITK/Insight/Auxiliary/FltkImageViewer > -L/Development/ITK/Insight/Auxiliary/MetaImage/IView > -L/Development/ITK/Insight/Examples/SurfaceGenerator -L/home/linglan/lib > -lpthread -ldl -lVXLNumerics -lITKCommon -lITKBasicFilters -lm -lITKCommon > -lITKBasicFilters -lITKIO -lIView -litkpng -litkzlib -lFltkImageViewer -lf ltk > -lGL -lGLU -lm -lpthread -ldl -lVXLNumerics -lITKCommon -lITKBasicFilters -lm > -lITKCommon -lITKBasicFilters -lITKIO -lIView -litkpng -litkzlib > -lFltkImageViewer -lfltk -lGL -lGLU -lm > -Wl,-R,/Development/ITK/Insight/Utilities/zlib:/Development/ITK/Insight/Ut ilitie > s/png:/Development/ITK/Insight/Code/Common:/Development/ITK/Insight/Code/IO: /Dev > elopment/ITK/Insight/Code/Numerics/vxl:/Development/ITK/Insight/Code/BasicFi lter > s:/Development/ITK/Insight/Code/Algorithms:/Development/ITK/Insight/Auxiliar y/Fl > tkImageViewer:/Development/ITK/Insight/Auxiliary/MetaImage/IView:/Developmen t/IT > K/Insight/Examples/SurfaceGenerator:/home/linglan/lib -o SurfaceGenerator > make: Fatal error: Command failed for target `SurfaceGenerator' > Current working directory /Development/ITK/Insight/Examples/SurfaceGenerator > *** Error code 1 > The following command caused the error: > make - all > make: Fatal error: Command failed for target `default_target' > Current working directory /Development/ITK/Insight/Examples/SurfaceGenerator > *** Error code 1 > The following command caused the error: > cd /Development/ITK/Insight/Examples/SurfaceGenerator; make - default_target > make: Fatal error: Command failed for target `default_target_SurfaceGenerator' > Current working directory /Development/ITK/Insight/Examples > *** Error code 1 > The following command caused the error: > make - all > make: Fatal error: Command failed for target `default_target' > Current working directory /Development/ITK/Insight/Examples > *** Error code 1 > The following command caused the error: > cd /Development/ITK/Insight/Examples; make - default_target > make: Fatal error: Command failed for target `default_target_Examples' > Current working directory /Development/ITK/Insight > *** Error code 1 > The following command caused the error: > make - all > make: Fatal error: Command failed for target `default_target' > -------> cut here <----------- > ============================ > Linglan Edwards, Ph.D. > Senior Software Engineer > National Library of Medicine > Phone: (301) 435-3147 > Email: linglan@nlm.nih.gov > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users ------=_NextPart_000_00C9_01C22CCE.A996E980 Content-Type: application/octet-stream; name="FindFLTK.cmake" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="FindFLTK.cmake" #=0D # Find the native FLTK includes and library=0D #=0D # FLTK_FLUID_EXE, where to find the Fluid tool=0D # FLTK_WRAP_UI, This allows the FLTK_WRAP_UI command to work.=0D # FLTK_INCLUDE_PATH, where to find include files=0D # FLTK_LIBRARY, list of fltk libraries=0D # FLTK_BASE_LIBRARY, the full path to fltk.lib=0D # FLTK_GL_LIBRARY, the full path to fltk_gl.lib=0D # FLTK_FORMS_LIBRARY, the full path to fltk_forms.lib=0D =0D =0D OPTION(USE_FLTK_VERSION_1.0.11 "Use FLTK version 1.0.11" 1)=0D =0D OPTION(USE_FLTK_VERSION_1.1 "Use FLTK version 1.1" 0)=0D =0D # Exlusion between the two version=0D IF(USE_FLTK_VERSION_1.0.11)=0D SET(USE_FLTK_VERSION_1.1 0)=0D ENDIF(USE_FLTK_VERSION_1.0.11)=0D =0D =0D FIND_PATH(FLTK_INCLUDE_PATH FL/Fl.h=0D /usr/local/include=0D /usr/include=0D /usr/local/fltk=0D /usr/X11R6/include=0D H:/usr/local/fltk ../fltk=0D ) IF(WIN32) SET( FLTK_PLATFORM_DEPENDENT_LIBS wsock32 ) ENDIF(WIN32) IF(UNIX) SET( FLTK_PLATFORM_DEPENDENT_LIBS ${CMAKE_X_LIBS} -lm) ENDIF(UNIX) =0D =0D # Make sure that the FLTK include path has been set=0D # So the FLTK_LIBRARY does not appear the first time=0D IF(FLTK_INCLUDE_PATH)=0D IF(USE_FLTK_VERSION_1.0.11)=0D FIND_LIBRARY(FLTK_BASE_LIBRARY fltk=0D PATHS /usr/lib /usr/local/lib /usr/local/fltk/lib = H:/usr/local/fltk/lib /usr/X11R6/lib=0D ${FLTK_INCLUDE_PATH}/lib ../fltk=0D ) =20 SET( FLTK_LIBRARY ${FLTK_BASE_LIBRARY} = ${FLTK_PLATFORM_DEPENDENT_LIBS})=0D ENDIF(USE_FLTK_VERSION_1.0.11)=0D =0D =0D IF(USE_FLTK_VERSION_1.1)=0D FIND_LIBRARY(FLTK_BASE_LIBRARY fltk=0D PATHS /usr/lib /usr/local/lib /usr/local/fltk/lib = H:/usr/local/fltk/lib /usr/X11R6/lib=0D ${FLTK_INCLUDE_PATH}/lib ../fltk=0D )=0D FIND_LIBRARY(FLTK_GL_LIBRARY fltkgl=0D PATHS /usr/lib /usr/local/lib /usr/local/fltk/lib = H:/usr/local/fltk/lib /usr/X11R6/lib=0D ${FLTK_INCLUDE_PATH}/lib ../fltk=0D ) =0D FIND_LIBRARY(FLTK_FORMS_LIBRARY fltkforms=0D PATHS /usr/lib /usr/local/lib /usr/local/fltk/lib = H:/usr/local/fltk/lib /usr/X11R6/lib=0D ${FLTK_INCLUDE_PATH}/lib ../fltk=0D ) ENDIF(USE_FLTK_VERSION_1.1) SET( FLTK_LIBRARY ${FLTK_GL_LIBRARY} ${FLTK_FORMS_LIBRARY} = ${FLTK_BASE_LIBRARY}\ ${FLTK_PLATFORM_DEPENDENT_LIBS} )=0D =0D ENDIF(FLTK_INCLUDE_PATH)=0D =0D # Find Fluid=0D FIND_FILE(FLTK_FLUID_EXE fluid=0D ${path} ${FLTK_INCLUDE_PATH}/fluid=0D )=0D =0D # Enable the Wrap UI command=0D IF (FLTK_FLUID_EXE)=0D SET ( FLTK_WRAP_UI 1 CACHE INTERNAL "Can we honour the FLTK_WRAP_UI = command" )=0D ENDIF (FLTK_FLUID_EXE)=0D =0D #=0D # Set HAS_FLTK=0D # This is the final flag that will be checked by=0D # other code that requires FLTK for compile/run.=0D #=0D IF(FLTK_FLUID_EXE)=0D IF(FLTK_INCLUDE_PATH)=0D IF(FLTK_LIBRARY)=0D SET (HAS_FLTK 1 CACHE INTERNAL "FLTK library, headers and Fluid = are available")=0D ENDIF(FLTK_LIBRARY)=0D ENDIF(FLTK_INCLUDE_PATH)=0D ENDIF(FLTK_FLUID_EXE)=0D =0D =0D ------=_NextPart_000_00C9_01C22CCE.A996E980-- From koen.vanleemput@hus.fi Wed Jul 17 13:50:28 2002 From: koen.vanleemput@hus.fi (Koen Van Leemput) Date: Wed, 17 Jul 2002 15:50:28 +0300 Subject: [Insight-users] Bug in itkPNGImageIO In-Reply-To: <3D32C3C6.2090504@kitware.com> References: <200207151428.51348.koen.vanleemput@hus.fi> <3D32C3C6.2090504@kitware.com> Message-ID: <200207171550.28899.koen.vanleemput@hus.fi> Many thanks for your quick response, Luis. In the meanwhile, however, I c= ame=20 across another bug in itkPNGImageIO, this time related to writing 3-D col= or=20 images. When writing a 3-D image with pixeltype RGBPixel, the firs= t PNG=20 file written is OK. The second and the third PNG files, however, contain = a=20 mixture between the first and the second slice of the 3-D image. The four= th=20 PNG file contains the second slice of the image, etc. While I have not looked into it further, my guess is that the "offset"=20 argument in PNGImageIO::WriteSlice is again responsible... Koen On Monday 15 July 2002 15:44, Luis Ibanez wrote: > Hi Koen, > > Thanks a lot for your bug report. > Following your description the bug was fixed. > You can cvs-update in order to get the corrected version. > > Also the "%s%d.png" format was changed for "%s%03d.png" > in order to generate numbers like: > > 001,002,003,..,010,..,100 > > instead of > > 1,2,3....,10,....,100 > > In this way, when filenames are ordered lexicografically > the order is consistent with the position of slices in > the image. > > > An Example was added to: > > Insight/Examples/RawImageReadWrite > > it is called : > > itkRawImageReadWritePNG.cxx > > It reads a Raw image and dump all the slices into PNG files. > > This can be used as an utility in itself. > > > Thanks again, > > > Luis > > > =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 > > Koen Van Leemput wrote: > > When writing a 3-D image with itkPNGImageIO, all the files "%s%d.png" > > contain the same first slice of the data set. This appears to be caus= es > > by > > > > PNGImageIO::WriteSlice(std::string& fileName, const void* buffer, > > unsigned long offset) > > > > in which the "offset" argument is not correctly handled. > > > > To replicate this error, use something like > > > > typedef itk::ImageFileWriter< ImageType > FileSinkType; > > typedef itk::PNGImageIO PNGWriterType; > > > > FileSinkType::Pointer fileSink =3D FileSinkType::New(); > > PNGWriterType::Pointer PNGWriter =3D PNGWriterType::New(); > > > > fileSink->SetImageIO( PNGWriter ); > > fileSink->SetFilePrefix( outputFilePrefix ); > > fileSink->SetInput( fileSource->GetOutput() ); > > fileSink->Write(); > > > > This should be easy to fix... > > > > Koen --=20 *************************************************************************= ****=20 Koen Van Leemput, Ph.D. email : koen.vanleemput@hus.fi=20 Department of Radiology phone: +358 9 471 71331 =20 Helsinki University Central Hospital mobile: +358 9 471 62300 =20 P.O. Box 340 fax: +358 9 471 71342 = =20 FIN-00029 HUS = =20 FINLAND = =20 *************************************************************************= ****=20 From affable@hd2.dot.net.in Wed Jul 17 14:50:13 2002 From: affable@hd2.dot.net.in (cspl) Date: Wed, 17 Jul 2002 19:20:13 +0530 Subject: [Insight-users] Help Message-ID: <002801c22d98$e15ccef0$5033b801@macinfo.net> This is a multi-part message in MIME format. ------=_NextPart_000_0025_01C22DC6.F9A35280 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I have a requirement where in i need to construct an Image instance=20 from a memory buffer.I could not find a class or a function in ITK=20 which can do this. I've tried with itk::ImageFileReader but it requires the Filename=20 as input.I've tried with itk::ImageIOBase , but it can only read=20 the file in to a buffer.It is not constructing Image object.I read=20 the source code of the above classes for any relavent code.I did=20 not find any.=20 Can any body help me??? CSPL ------=_NextPart_000_0025_01C22DC6.F9A35280 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
I have a requirement where in i need to = construct=20 an Image instance
from a memory buffer.I could not find a class or a = function in ITK
which can do this.
I've tried with = itk::ImageFileReader=20 but it requires the Filename
as input.I've tried with = itk::ImageIOBase , but=20 it can only read
the file in to a buffer.It is not constructing = Image=20 object.I read
the source code of the above classes for any relavent = code.I=20 did
not find any.
Can any body help me???
 
CSPL
------=_NextPart_000_0025_01C22DC6.F9A35280-- From Linglan Edwards Wed Jul 17 16:08:19 2002 From: Linglan Edwards (Linglan Edwards) Date: Wed, 17 Jul 2002 11:08:19 -0400 (EDT) Subject: [Insight-users] ImageRegistration input file format. Message-ID: <200207171508.LAA03749@lhc.nlm.nih.gov> In Examples/ImageRegistration, what type of input image format does it take? And where I can find some sample images? Thanks, Linglan From jjomier@cs.unc.edu Wed Jul 17 16:44:28 2002 From: jjomier@cs.unc.edu (Julien Jomier) Date: Wed, 17 Jul 2002 11:44:28 -0400 Subject: [Insight-users] ImageRegistration input file format. References: <200207171508.LAA03749@lhc.nlm.nih.gov> Message-ID: <010a01c22da8$d5f82400$69691398@Picasso> Hi Linglan, The input type is MetaImage (and maybe raw too) You can use data from BainWeb available at ftp://public.kitware.com/pub/itk/Data/BrainWeb/ Hope this helps Julien ----- Original Message ----- From: "Linglan Edwards" To: Sent: Wednesday, July 17, 2002 11:08 AM Subject: [Insight-users] ImageRegistration input file format. > > In Examples/ImageRegistration, what type of input image format does it take? And > where I can find some sample images? > > Thanks, > > Linglan > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users From renaud.winzenrieth@utc.fr Thu Jul 18 11:07:20 2002 From: renaud.winzenrieth@utc.fr (Renaud Winzenrieth) Date: Thu, 18 Jul 2002 12:07:20 +0200 Subject: [Insight-users] Cmake error Message-ID: <3D369358.2010900@utc.fr> Hi, I'm a new ITK users and I have lots of installation problems. I've already used FLTK 1.0.11 and VTK 4.0 and VC++. I got the following error message when I tried to run Cmake for FltkImageViewer: Cmake error: FLTK_WRAP_UI Has anybody have the solution? From jjomier@cs.unc.edu Thu Jul 18 13:45:50 2002 From: jjomier@cs.unc.edu (jjomier@cs.unc.edu) Date: Thu, 18 Jul 2002 08:45:50 -0400 Subject: [Insight-users] Cmake error Message-ID: <3882939d42.39d4238829@cs.unc.edu> Hi Renaud, Did you specify the complete path to Fluid ? What version of CMake are you using ? Julien ----- Original Message ----- From: Renaud Winzenrieth Date: Thursday, July 18, 2002 6:07 am Subject: [Insight-users] Cmake error > Hi, > I'm a new ITK users and I have lots of installation problems. > I've already used FLTK 1.0.11 and VTK 4.0 and VC++. > I got the following error message when I tried to run Cmake for > FltkImageViewer: > Cmake error: FLTK_WRAP_UI > Has anybody have the solution? > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From Linglan Edwards Fri Jul 19 15:37:44 2002 From: Linglan Edwards (Linglan Edwards) Date: Fri, 19 Jul 2002 10:37:44 -0400 (EDT) Subject: [Insight-users] Params setting for watershed segmentation example. Message-ID: <200207191437.KAA16109@lhc.nlm.nih.gov> Hi, Could anybody tell me what are the reasonable settings for the following Examples/WatershedSegmentation parameters: conductance_term diffusion_iterations lower_threshold Thanks, Linglan From cates@sci.utah.edu Fri Jul 19 16:22:02 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Fri, 19 Jul 2002 09:22:02 -0600 (MDT) Subject: [Insight-users] Params setting for watershed segmentation example. In-Reply-To: <200207191437.KAA16109@lhc.nlm.nih.gov> Message-ID: Hi, Reasonable settings for these parameters will be highly dependent on your data and the level of detail you are trying to achieve in your segmentation. Have a look at the README file in Examples/WatershedSegmentation. I suggest starting with a conductance term of 1.0, 10 iterations, and a lower threshold of 0.01 (expressed as a percentage 0.0-1.0 of the maximum height of the input image), then tuning from there. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Fri, 19 Jul 2002, Linglan Edwards wrote: > Hi, > > Could anybody tell me what are the reasonable settings for the following > Examples/WatershedSegmentation parameters: > conductance_term diffusion_iterations lower_threshold > > Thanks, > > Linglan > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From targetemailextractor@btamail.net.cn Fri Jul 19 20:37:37 2002 From: targetemailextractor@btamail.net.cn (targetemailextractor@btamail.net.cn) Date: Sat, 20 Jul 2002 03:37:37 +0800 Subject: [Insight-users] ADV: Direct email blaster, email addresses extractor, maillist verify, maillist manager........... Message-ID: <20020719193737.7E66E1AAD3@public.kitware.com> =3CBODY bgColor=3D#ffffff=3E =3CDIV=3E=3CFONT size=3D2=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E =3B=3C=2FDIV=3E =3CDIV=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial size=3D4=3EDirect Email Blaster=3C=2FFONT=3E=3C=2FSTRONG=3E =3C=2FDIV=3E=3CFONT size=3D2=3E =3CP=3E=3CFONT face=3DArial=3E=3CB=3E=3CFONT color=3D#006600=3E=3CI=3EThe program will send mail at the rate of over 1=2C 000 e-mails per minute=2E =3B=3C=2FI=3E=3C=2FFONT=3E=3CBR=3ELegal and Fast sending bulk emails =3B=3CBR=3E=3CFONT color=3D#006600=3E=3CI=3EBuilt in SMTP server =3B=3C=2FI=3E=3C=2FFONT=3E=3CBR=3EHave Return Path =3B=3CBR=3ECan Check Mail Address =3B=3CBR=3E=3CFONT color=3D#006600=3E=3CI=3EMake Error Send Address List=28 Remove or Send Again=29 =3B=3C=2FI=3E=3C=2FFONT=3E=3CBR=3ESupport multi-threads=2E =3B=3CBR=3ESupport multi-smtp servers=2E =3B=3CBR=3EManages your opt-in E-Mail Lists =3B=3CBR=3EOffers an easy-to-use interface! =3B=3CBR=3EEasy to configure and use =3B=3C=2FB=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Fedeb=5Fset=2Ezip=22=3E=3CSTRONG=3EDownload Now=3C=2FSTRONG=3E=3C=2FA=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial size=3D4=3EMaillist Verify=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3EMaillist Verify is intended for e-mail addresses and mail lists verifying=2E The main task is to determine which of addresses in the mail list are dead=2E The program is oriented=2C basically=2C on programmers which have their own mail lists to inform their users about new versions of their programs=2E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3EThe program works on the same algorithm as ISP mail systems do=2E Mail servers addresses for specified address are extracted from DNS=2E The program tries to connect with found SMTP-servers and simulates the sending of message=2E It does not come to the message =3CNOBR=3Esending ‿=3B=2FNOBR>=3B EMV disconnect as soon as mail server informs does this address exist or not=2E EMV can find=3C=2FNOBR=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CNOBR=3E =3Babout 90% of dead addresses ‿=3B=2FNOBR>=3B some mail systems receive all messages and only then see their =3B=3C=2FNOBR=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CNOBR=3Eaddresses and if the address is dead send the message back with remark about it=2E=3C=2FNOBR=3E=3C=2FFONT=3E=3C=2FP=3E=3CNOBR=3E =3CP=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Fbemv=5Fset=2Ezip=22=3E=3CSTRONG=3E=3CFONT face=3DArial size=3D3=3EDownload Now=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FA=3E=3C=2FP=3E =3CP=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial size=3D4=3EExpress Email Blaster =3B=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3EExpress Email Blaster =3B is a very fast=2C powerful yet simple to use email sender=2E Utilizing multiple threads=2Fconnections=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E =3Band multiple SMTP servers your emails will be sent out fast and easily=2E There are User Information=2C Attach Files=2C =3B=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3EAddress and Mail Logs four tabbed area for the E-mails details for sending=2E About 25 SMTP servers come with the =3B=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3Edemo version=2C and users may Add and Delete SMTP servers=2E About =3CFONT color=3D#008000=3E=3CB=3E60=2C000=3C=2FB=3E=3C=2FFONT=3E E-mails will be sent out per hour=2E=22=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CSTRONG=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Fbeeb=5Fset=2Ezip=22=3E=3CFONT face=3DArial size=3D3=3EDownload Now=3C=2FFONT=3E=3C=2FA=3E=3C=2FSTRONG=3E=3C=2FP=3E =3CP=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial size=3D4=3EExpress Email Address Extractor=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FP=3E=3CFONT size=3D4=3E =3CP=3E=3CFONT color=3D#008000 size=3D3=3EThis program is the most efficient=2C easy to use email address collector available on the =3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CFONT color=3D#008000 size=3D3=3E =3Binternet! =3C=2FFONT=3E=3CFONT color=3D#000000 size=3D3=3EBeijing Express Email Address Extractor =28ExpressEAE=29 is designed to extract=3C=2FFONT=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT color=3D#000000 size=3D3=3E =3Be-mail addresses from web-pages on the Internet =28using HTTP protocols=29 =2EExpressEAE=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT color=3D#000000 size=3D3=3E =3Bsupports operation through many proxy-server and works very fast=2C as it is able of =3B=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT color=3D#000000 size=3D3=3Eloading several pages simultaneously=2C and requires very few resources=2E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT color=3D#000000 face=3DArial=3E=3CFONT size=3D3=3EWith it=2C you will be able to=3C=2FFONT=3E=3CFONT size=3D2=3E =3C=2FFONT=3E=3CFONT size=3D3=3Euse targeted searches to crawl the world wide web=2C extracting =3B=3C=2FFONT=3E=3C=2FFONT=3E =3CP=3E=3CFONT color=3D#000000 face=3DArial size=3D3=3Ethousands of clean=2C fresh email addresses=2E Ably Email address Extractor is unlike other =3B=3C=2FFONT=3E =3CP=3E=3CFONT color=3D#000000 face=3DArial size=3D3=3Eaddress collecting programs=2C which limit you to one or two search engines and are unable=3C=2FFONT=3E =3CP=3E=3CFONT color=3D#000000 face=3DArial size=3D3=3E =3Bto do auto searches HUGE address=2E Most of them collect a high percentage of incomplete=2C =3B=3C=2FFONT=3E =3CP=3E=3CFONT color=3D#000000 face=3DArial size=3D3=3Eunusable addresses which will cause you serious problems when using them in a mailing=2E =3B=3C=2FFONT=3E =3CUL=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EEasier to learn and use than any other email address collector program available=2E=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EAccesses eight search engines =3B=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EAdd your own URLs to the list to be searched=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial size=3D3=3E=3CFONT color=3D#008000=3ESupports operation through =3C=2FFONT=3E=3CFONT color=3D#ff00ff=3Ea lot of=3C=2FFONT=3E=3CFONT color=3D#008000=3E proxy-server and works very fast =28HTTP Proxy=29=3C=2FFONT=3E=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EAble of loading several pages simultaneously=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3ERequires very few resources=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3ETimeout feature allows user to limit the amount of time crawling in dead sites and traps=2E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial size=3D3=3E=3CFONT color=3D#008000=3EEasy to make =3C=2FFONT=3E=3CFONT color=3D#ff00ff=3EHuge=3C=2FFONT=3E=3CFONT color=3D#008000=3E address list=3C=2FFONT=3E=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EPause=2Fcontinue extraction at any time=2E=3C=2FFONT=3E =3CLI=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EAuto connection to the Internet=3C=2FFONT=3E =3C=2FLI=3E=3C=2FUL=3E =3CDIV=3E=3CSTRONG=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Feeae=5Fset=2Ezip=22=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EDownload Now=3C=2FFONT=3E=3C=2FA=3E=3C=2FSTRONG=3E =3C=2FDIV=3E =3CDIV=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial=3EExpress Email Address Downloader=3C=2FFONT=3E=3C=2FSTRONG=3E =3C=2FDIV=3E =3CUL=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#006600 size=3D2=3EExpressEAD =3B =3C=2FFONT=3E=3CFONT color=3D#000000 size=3D2=3Eis a 32 bit Windows Program for e-mail marketing=2E It is intended for easy and convenient=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#000000 size=3D2=3E =3Bsearch large e-mail address lists from mail servers=2E The program can be operated on =3B=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#000000 size=3D2=3EWindows 95=2F98=2FME=2F2000 and NT=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#006600 size=3D2=3EExpressEAD =3B =3C=2FFONT=3E=3CFONT color=3D#000000 size=3D2=3Esupport multi-threads =28up to 1024 connections=29=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#006600 size=3D2=3EExpressEAD =3B =3C=2FFONT=3E=3CFONT color=3D#000000 size=3D2=3Ehas the ability =3B to reconnect to the mail server if the server has disconnected and =3B=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#000000 size=3D2=3Econtinue the searching at the point where it has been interrupted=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#006600 size=3D2=3EExpressEAD =3B =3C=2FFONT=3E=3CFONT color=3D#000000 size=3D2=3Ehas an ergonomic interface that is easy to set up and simple to use=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3C=2FLI=3E=3C=2FUL=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CP=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT color=3D#008000 face=3DArial size=3D4=3EFeatures=3A=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CUL type=3Ddisc=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT face=3DArial size=3D2=3Esupport multi-threads=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT face=3DArial size=3D2=3Eauto get smtp server address=2Csupport multi-smtp servers=2E=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT face=3DArial size=3D2=3Eauto save =3B E-Mail Lists=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3CLI=3E=3CFONT face=3DArial=3E=3CSTRONG=3E=3CFONT face=3DArial size=3D2=3Eoffers an easy-to-use interface!=3C=2FFONT=3E=3C=2FSTRONG=3E=3C=2FFONT=3E =3C=2FLI=3E=3C=2FUL=3E =3CDIV=3E=3CSTRONG=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Feead=5Fset=2Ezip=22=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EDownload Now=3C=2FFONT=3E=3C=2FA=3E=3C=2FSTRONG=3E =3C=2FDIV=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E=3CSTRONG=3E=3CFONT color=3D#ff0080 face=3DArial=3EExpress Maillist Manager=3C=2FFONT=3E=3C=2FSTRONG=3E =3C=2FDIV=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E=3CFONT size=3D2=3E =3CP=3E=3CFONT face=3DArial=3E=3CFONT color=3Dblack size=3D3=3EThis program was designed to be a complement to the =3C=2FFONT=3E=3CFONT color=3D#800080 size=3D3=3EDirect Email Blaster =3B =3C=2FFONT=3E=3CFONT color=3Dblack size=3D3=3Eand =3C=2FFONT=3E=3CFONT color=3D#800080 size=3D3=3EEmail Blaster =3C=2FFONT=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CFONT color=3Dblack size=3D3=3Esuite of bulk email software programs=2E Its purpose is to organize your email lists in order to be more =3B=3C=2FFONT=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E=3CFONT color=3Dblack size=3D3=3Eeffective with your email marketing campaign=2E Some of its features include=3A=3C=2FFONT=3E=3C=2FFONT=3E=3C=2FP=3E =3CP=3E=3CB=3E=3CFONT color=3D#008000 face=3DArial=3E=3CFONT size=3D3=3E‿=3BCombine several lists into one file=2E=3C=2FFONT=3E=3CBR=3E=3CFONT size=3D3=3E‿=3BSplit up larger lists to make them more manageable=2E=3C=2FFONT=3E=3CBR=3E=3CFONT size=3D3=3E‿=3BRemove addresses from file=2E=3C=2FFONT=3E=3CBR=3E=3CFONT size=3D3=3E‿=3BManual editing=2C adding=2C and deleting of addresses=2E=3C=2FFONT=3E=3CBR=3E=3CFONT size=3D3=3E‿=3BAbility to auto clean lists=2C that is=2C remove any duplicate or unwanted addresses=2E=3C=2FFONT=3E=3CBR=3E=3CFONT size=3D3=3E‿=3BMaintain all your address lists within the program so you no =3B longer need to keep all your=3C=2FFONT=3E=3C=2FFONT=3E=3C=2FB=3E=3C=2FP=3E =3CP=3E=3CB=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3E =3Blists saved as separate text files=2E=3C=2FFONT=3E=3C=2FB=3E=3C=2FP=3E =3CP=3E=3CSTRONG=3E=3CA href=3D=22http=3A=2F=2Fwww=2Ewldinfo=2Ecom=2Fbj=5Fdownload=2Fbemm=5Fset=2Ezip=22=3E=3CFONT color=3D#008000 face=3DArial size=3D3=3EDownload Now=3C=2FFONT=3E=3C=2FA=3E=3C=2FSTRONG=3E=3C=2FP=3E =3CP=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E=3C=2FP=3E =3CP=3E =3B=3C=2FP=3E =3CDIV=3E=3CFONT face=3DArial=3Eif you want to remove your email=2C please send email to =3CA href=3D=22mailto=3Atargetemailremoval=40btamail=2Enet=2Ecn=22=3Etargetemailremoval=40btamail=2Enet=2Ecn=3C=2FA=3E=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E=3CFONT face=3DArial=3E =3B=3C=2FFONT=3E =3C=2FDIV=3E =3CDIV=3E =3B=3C=2FDIV=3E=3C=2FFONT=3E=3C=2FDIV=3E=3C=2FFONT=3E=3C=2FNOBR=3E=3C=2FFONT=3E=3C=2FFONT=3E=3C=2FDIV=3E From affable@hd2.dot.net.in Tue Jul 23 10:00:22 2002 From: affable@hd2.dot.net.in (cspl) Date: Tue, 23 Jul 2002 14:30:22 +0530 Subject: [Insight-users] help needed in using neighbourhood class Message-ID: <007c01c23227$63a890a0$5033b801@macinfo.net> This is a multi-part message in MIME format. ------=_NextPart_000_0079_01C23255.7A017500 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Dear Mr.Luise, I am working on morphological operations on Images.I used the class = "itk::BinaryDilateImageFilter .h". I have created structuring element using the Neighbourhood class. But,I got the output image as the input image with out any effect.I = tested the application with both MRI and CT Scan Images. I found many classes on neighbourhood.I could understand the each class = but,what is sequence of using them in order to create required = structuring element. Here, I am enclosing code. // code to dilate an image itk::Size<2> size =3D {256, 256}; //used for setting radius =20 typedef itk::NeighborhoodAllocator NAllocator; NAllocator *nat=3Dnew NAllocator; =20 typedef itk::Neighborhood = KernelType; KernelType *NA=3Dnew KernelType; //To set radius NA->SetRadius(size); unsigned short cv=3DNA->GetCenterValue();=20 =20 typedef = itk::BinaryDilateImageFilter = Morphology; Morphology::Pointer GMF=3D Morphology::New(); =20 =20 GMF->SetInput(image); =20 GMF->SetDilateValue(25000); =20 ImageType::Pointer image1 =3D GMF->GetOutput(); //code to write a raw file Regards, CSPL ------=_NextPart_000_0079_01C23255.7A017500 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear Mr.Luise,
 I am working on = morphological operations on Images.I used the class =20 "itk::BinaryDilateImageFilter .h".
I have created structuring element = using=20 the Neighbourhood class.
But,I got the output image as the input = image with=20 out any effect.I tested the application with both MRI and CT Scan = Images.
I=20 found many classes on neighbourhood.I could understand the each class = but,what=20 is sequence of using them in order to create required structuring=20 element.
Here, I am enclosing code.
 
// code to dilate an = image
itk::Size<2>=20 size =3D {256, 256}; //used for setting = radius
 
   =20 typedef itk::NeighborhoodAllocator<PixelType>  =20 NAllocator;
    NAllocator  *nat=3Dnew=20 NAllocator;
 
    typedef=20 itk::Neighborhood<PixelType,(unsigned int)2,NAllocator>=20  KernelType;
    KernelType  *NA=3Dnew=20 KernelType;
 
    //To set = radius
 
   =20 NA->SetRadius(size);
 
    unsigned short=20 cv=3DNA->GetCenterValue();
 
  
   =20 typedef           =      =20 itk::BinaryDilateImageFilter<ImageType,ImageType,KernelType> &= nbsp;         =20 Morphology;
    Morphology::Pointer  GMF=3D=20 Morphology::New();
 =20
 
 GMF->SetInput(image);
 
 GMF->S= etDilateValue(25000);
 =20
 ImageType::Pointer  image1 =3D = GMF->GetOutput();
 
 //code to write a raw = file
 
Regards,
CSPL
------=_NextPart_000_0079_01C23255.7A017500-- From salah@gris.uni-tuebingen.de Thu Jul 25 09:54:51 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Thu, 25 Jul 2002 10:54:51 +0200 Subject: [Insight-users] IsolatedConnectedImageFilter. Message-ID: <009e01c233b8$f041fa50$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_009B_01C233C9.B3BEE370 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everybody, I am building a segmentation example based on on the = IsolatedConnectedImageFilter. Can anybody tell me what are the parameters that should be set and to = what ideal values. thanks in advance for any help. Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_009B_01C233C9.B3BEE370 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 
Hi everybody,
 
I am building a segmentation example = based on on=20 the IsolatedConnectedImageFilter.
Can anybody tell me what are the = parameters that=20 should be set and to what ideal values.
 
thanks in advance for any = help.
 
Zein
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_009B_01C233C9.B3BEE370-- From renaud.winzenrieth@utc.fr Thu Jul 25 10:14:45 2002 From: renaud.winzenrieth@utc.fr (Renaud Winzenrieth) Date: Thu, 25 Jul 2002 11:14:45 +0200 Subject: [Insight-users] itkVTKtoITKtoVTK example Message-ID: <3D3FC185.1050808@utc.fr> --------------040300060309010204070308 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi , I can execute correctly the itkVTKtoITKtoVTK example but when I change : vtkImageNoiseSource* source = vtkImageNoiseSource::New(); source->SetWholeExtent(0, 255, 0, 255, 0, 0); source->SetMinimum(0); source->SetMaximum(1); by vtkJPEGReader * source = vtkJPEGReader::New(); source->SetFileName("D:/renaud/These/Images/TE_00011.jpg"); (for example) I obtain an unhandled execption (kernel32.dll) due to the RENDER function (renwin->Render()). Anybody can help me? Thank in advance, renaud --------------040300060309010204070308 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit
Hi ,
I can execute correctly the itkVTKtoITKtoVTK example but when I change :

vtkImageNoiseSource* source = vtkImageNoiseSource::New();
  source->SetWholeExtent(0, 255, 0, 255, 0, 0);
  source->SetMinimum(0);
  source->SetMaximum(1);

by
  vtkJPEGReader * source = vtkJPEGReader::New();
  source->SetFileName("D:/renaud/These/Images/TE_00011.jpg");

(for example)
I obtain an unhandled execption (kernel32.dll) due to the RENDER function (renwin->Render()).
Anybody can help me?

Thank in advance,
    renaud
--------------040300060309010204070308-- From millerjv@crd.ge.com Thu Jul 25 14:04:33 2002 From: millerjv@crd.ge.com (Miller, James V (Research)) Date: Thu, 25 Jul 2002 09:04:33 -0400 Subject: [Insight-users] itkVTKtoITKtoVTK example Message-ID: This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C233DB.D241684E Content-Type: text/plain I am guessing this is a problem with pixel types. vtkImageNoiseSource probably produces an image of single component floats. vtkJPEGReader produces an image of three component (red, green, blue) unsigned chars. Whe the VTK and ITK pipelines are connected together (at line 130), ITK is expecting an image of single component floats since this is the type of importer created. However, the vtkJPEGReader is producing an image of 3 component unsigned chars. You could run the output from the vtkJPEGReader through an vtkImageLuminance to convert the RGB data to single component, then run that output through a vtkImageCast to convert to float pixels. Then connect the output of the cast to the importer. -----Original Message----- From: Renaud Winzenrieth [mailto:renaud.winzenrieth@utc.fr] Sent: Thursday, July 25, 2002 5:15 AM To: insight-users@public.kitware.com Subject: [Insight-users] itkVTKtoITKtoVTK example Hi , I can execute correctly the itkVTKtoITKtoVTK example but when I change : vtkImageNoiseSource* source = vtkImageNoiseSource::New(); source->SetWholeExtent(0, 255, 0, 255, 0, 0); source->SetMinimum(0); source->SetMaximum(1); by vtkJPEGReader * source = vtkJPEGReader::New(); source->SetFileName("D:/renaud/These/Images/TE_00011.jpg"); (for example) I obtain an unhandled execption (kernel32.dll) due to the RENDER function (renwin->Render()). Anybody can help me? Thank in advance, renaud ------_=_NextPart_001_01C233DB.D241684E Content-Type: text/html
I am guessing this is a problem with pixel types.  vtkImageNoiseSource probably produces an image of single
component floats.  vtkJPEGReader produces an image of three component (red, green, blue) unsigned chars.
 
Whe the VTK and ITK pipelines are connected together (at line 130), ITK is expecting an image of single component
floats since this is the type of importer created.  However, the vtkJPEGReader is producing an image of 3 component
unsigned chars.
 
You could run the output from the vtkJPEGReader through an vtkImageLuminance to convert the RGB data to
single component, then run that output through a vtkImageCast to convert to float pixels.  Then connect the
output of the cast to the importer.
 
 
 
-----Original Message-----
From: Renaud Winzenrieth [mailto:renaud.winzenrieth@utc.fr]
Sent: Thursday, July 25, 2002 5:15 AM
To: insight-users@public.kitware.com
Subject: [Insight-users] itkVTKtoITKtoVTK example


Hi ,
I can execute correctly the itkVTKtoITKtoVTK example but when I change :

vtkImageNoiseSource* source = vtkImageNoiseSource::New();
  source->SetWholeExtent(0, 255, 0, 255, 0, 0);
  source->SetMinimum(0);
  source->SetMaximum(1);

by
  vtkJPEGReader * source = vtkJPEGReader::New();
  source->SetFileName("D:/renaud/These/Images/TE_00011.jpg");

(for example)
I obtain an unhandled execption (kernel32.dll) due to the RENDER function (renwin->Render()).
Anybody can help me?

Thank in advance,
    renaud
------_=_NextPart_001_01C233DB.D241684E-- From hans-johnson@uiowa.edu Thu Jul 25 14:39:20 2002 From: hans-johnson@uiowa.edu (Hans J. Johnson) Date: Thu, 25 Jul 2002 08:39:20 -0500 Subject: [Insight-users] MRIBiasCorrector program Message-ID: <3D3FFF88.6040202@uiowa.edu> Hello, I trying to use the MRIBiasCorrector program, and I am getting a segmentation fault. I am using the most generic command line, with a floating point input image with Meta data header: ============== NDims = 3 DimSize = 256 256 124 ElementType = MET_FLOAT ElementSpacing = 0.703125 0.703125 1.500000 ElementByteOrderMSB = False ElementDataFile = /home/hjohnson/T1_float.img =============== COMMANDLINE: /usr/robin/people/hjohnson/src/buildhome/athlon/DEBUG/bin/BiasCorrector --input /home/hjohnson/T1_float.mhd --output xxx.img --class-mean 1500 570 --class-sigma 100 70 --use-log yes --degree 3 --growth 1.05 --shrink 0.9 ********The following warnings are produced within a few seconds of startup Loading images... WARNING: In /IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, line 94 ReadMetaImage (0x8134528): SetOutput(): This method is slated to be removed from ITK. Please use GraftOutput() in possible combination with DisconnectPipeline() instead. Input image loaded. Images loaded. WARNING: In /IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, line 94 MRIBiasFieldCorrectionFilter (0x81320f0): SetOutput(): This method is slated to be removed from ITK. Please use GraftOutput() in possible combination with DisconnectPipeline() instead. *******After about 2 minutes the program seg faults ******* ====================Stack Trace ================= chunk_free, FP=bfffd558 __cfree, FP=bfffd578 __builtin_delete, FP=bfffd598 __builtin_vec_delete, FP=bfffd5b8 vnl_c_vector_dealloc, FP=bfffd5d8 [282]--> delete [] static_cast(v); vnl_c_vector::deallocate, FP=bfffd5f8 [309]--> vnl_c_vector_dealloc(v, n, sizeof (T)); vnl_vector::destroy, FP=bfffd618 [252]--> vnl_vector_free_blah; vnl_vector::~vnl_vector, FP=bfffd638 [107]--> ~vnl_vector() { if (data) destroy(); } itk::Array::~Array, FP=bfffd658 [71]--> ~Array() {}; ...gned int)3> >::EstimateBiasField, FP=bfffd6e8 [277]-->bias->SetCoefficients(m_Optimizer->GetCurrentPosition()); ...(unsigned int)3> >::GenerateData, FP=bfffe328 [447]-->this->EstimateBiasField(bias, *iter) ; ...:ProcessObject::UpdateOutputData, FP=bfffe488 [814]-->this->GenerateData(); itk::DataObject::UpdateOutputData, FP=bfffe4a8 [403]-->m_Source->UpdateOutputData(this); itk::DataObject::Update, FP=bfffe4c8 [328]-->this->UpdateOutputData(); itk::ProcessObject::Update, FP=bfffe4e8 [482] void [483] ProcessObject [484] ::Update() [485] { [486] if (this->GetOutput(0)) [487] { [488]--> this->GetOutput(0)->Update(); [489] } [490] } main, FP=bfffe818 [212] filter->SetBiasFieldDegree(degree) ; [213] filter->SetUsingSlabIdentification(usingSlabIdentification) ; [214] filter->SetSlicingDirection(sliceDirection) ; [215]-->filter->Update() ; __libc_start_main, FP=bfffe858 ============================================== Any suggestions or help would be greatly appreciated. -- Regards, Hans ============================================================================= Hans J. Johnson 305 MEB hans-johnson@uiowa.edu Dept. of Psychiatry http://moniz.psychiatry.uiowa.edu/~hjohnson The University of Iowa (319) 353-5593 Iowa City, IA 52242 ============================================================================= From shasting@bmi.ohio-state.edu Thu Jul 25 19:16:33 2002 From: shasting@bmi.ohio-state.edu (Shannon Hastings) Date: Thu, 25 Jul 2002 14:16:33 -0400 Subject: [Insight-users] MI Registration Message-ID: <3D404081.4070400@bmi.ohio-state.edu> I am just starting to play with the MI Registration Metric I am having some trouble getting any good results. I am for starters just trying to get it to register the same volume correctly with itself. This volume is a set of PGM images. The algorithm seems to always return some rotation in Z even though it is trying to register against the same data. I would think that it should return a transform back that is close to zero. Anyone have any idea? --shannon -- Shannon Hastings Research Specialist Ohio State University Medical Center Department of Biomedical Informatics 1-614-688-3470 shasting@bmi.ohio-state.edu From bahrahm@yahoo.com Thu Jul 25 19:49:54 2002 From: bahrahm@yahoo.com (Jisung Kim) Date: Thu, 25 Jul 2002 11:49:54 -0700 (PDT) Subject: [Insight-users] MRIBiasCorrector program In-Reply-To: <3D3FFF88.6040202@uiowa.edu> Message-ID: <20020725184954.77721.qmail@web10105.mail.yahoo.com> Hello. I am the developer of the program. I just ran it and had same seg fault error. The example is kind of old and there wasn't any change since I implemented and tested it on Windows and Linux. At this moment, I don't know what caused it. I will fix it and let you know. By the way, could you send an email with information about your system such as types and versions of OS and compiler? Thank you for pointing it out, Jisung. --- "Hans J. Johnson" wrote: > Hello, > > I trying to use the MRIBiasCorrector program, and I > am getting a > segmentation fault. > > I am using the most generic command line, with a > floating point input > image with Meta data header: > ============== > NDims = 3 > DimSize = 256 256 124 > ElementType = MET_FLOAT > ElementSpacing = 0.703125 0.703125 1.500000 > ElementByteOrderMSB = False > ElementDataFile = /home/hjohnson/T1_float.img > =============== > > COMMANDLINE: > /usr/robin/people/hjohnson/src/buildhome/athlon/DEBUG/bin/BiasCorrector > > --input /home/hjohnson/T1_float.mhd --output xxx.img > --class-mean 1500 > 570 --class-sigma 100 70 --use-log yes --degree 3 > --growth 1.05 > --shrink 0.9 > > > ********The following warnings are produced within a > few seconds of startup > > Loading images... > WARNING: In > /IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, > > line 94 > ReadMetaImage (0x8134528): SetOutput(): This method > is slated to be > removed from ITK. Please use GraftOutput() in > possible combination with > DisconnectPipeline() instead. > > Input image loaded. > Images loaded. > WARNING: In > /IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, > > line 94 > MRIBiasFieldCorrectionFilter (0x81320f0): > SetOutput(): This method is > slated to be removed from ITK. Please use > GraftOutput() in possible > combination with DisconnectPipeline() instead. > > *******After about 2 minutes the program seg faults > ******* > ====================Stack Trace ================= > chunk_free, FP=bfffd558 > __cfree, FP=bfffd578 > __builtin_delete, FP=bfffd598 > __builtin_vec_delete, FP=bfffd5b8 > vnl_c_vector_dealloc, FP=bfffd5d8 > [282]--> delete [] > static_cast(v); > vnl_c_vector::deallocate, FP=bfffd5f8 > [309]--> > vnl_c_vector_dealloc(v, n, sizeof (T)); > vnl_vector::destroy, FP=bfffd618 > [252]--> > vnl_vector_free_blah; > vnl_vector::~vnl_vector, FP=bfffd638 > [107]--> ~vnl_vector() { if > (data) destroy(); } > itk::Array::~Array, FP=bfffd658 > [71]--> ~Array() {}; > ...gned int)3> >::EstimateBiasField, FP=bfffd6e8 > > [277]-->bias->SetCoefficients(m_Optimizer->GetCurrentPosition()); > ...(unsigned int)3> >::GenerateData, FP=bfffe328 > > [447]-->this->EstimateBiasField(bias, *iter) ; > ...:ProcessObject::UpdateOutputData, FP=bfffe488 > [814]-->this->GenerateData(); > > itk::DataObject::UpdateOutputData, FP=bfffe4a8 > > [403]-->m_Source->UpdateOutputData(this); > itk::DataObject::Update, FP=bfffe4c8 > > [328]-->this->UpdateOutputData(); > itk::ProcessObject::Update, FP=bfffe4e8 > [482] void > [483] ProcessObject > [484] ::Update() > [485] { > [486] if > (this->GetOutput(0)) > [487] { > [488]--> > this->GetOutput(0)->Update(); > [489] } > [490] } > main, FP=bfffe818 > [212] > filter->SetBiasFieldDegree(degree) ; > [213] > filter->SetUsingSlabIdentification(usingSlabIdentification) > ; > [214] > filter->SetSlicingDirection(sliceDirection) ; > [215]-->filter->Update() ; > __libc_start_main, FP=bfffe858 > ============================================== > > Any suggestions or help would be greatly > appreciated. > > -- > Regards, > Hans > > ============================================================================= > > > Hans J. Johnson > > 305 MEB > hans-johnson@uiowa.edu > Dept. > of Psychiatry > http://moniz.psychiatry.uiowa.edu/~hjohnson > The University > of Iowa > (319) 353-5593 > > Iowa City, IA 52242 > ============================================================================= > > > > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users ===== Jisung Kim bahrahm@yahoo.com 106 Mason Farm Rd. 129 Radiology Research Lab., CB# 7515 Univ. of North Carolina at Chapel Hill Chapel Hill, NC 27599-7515 __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From mmalat@imaging.robarts.ca Thu Jul 25 23:48:15 2002 From: mmalat@imaging.robarts.ca (Mathieu Malaterre) Date: Thu, 25 Jul 2002 18:48:15 -0400 Subject: [Insight-users] BSpline interpolation Message-ID: <3D40802F.8E16EB86@imaging.robarts.ca> Hi itk gurus, I wanted to use itk for a BSpline interpolation of my images, but I am a bit confused with the documentation. I browse it trough, and I found two classes that I might be interested in: BSplineResampleImageFilterBase: http://public.kitware.com/Insight/Web/Doxygen/html/classitk_1_1BSplineResampleImageFilterBase.html and, BSplineCenteredResampleImageFilterBase http://public.kitware.com/Insight/Web/Doxygen/html/classitk_1_1BSplineCenteredResampleImageFilterBase.html Could someone confirm it ? Also could someone told wath are the differences between the two ? My problem was that I work with MRI images and some slices are of poor quality whereas the slice-1 and slice+1 are good ones (the patient seems to have moved). So I believe using a BSpline interpolation could help me improved the quality of my image (compared to a bilinear interpolation). I am sorry if my question has already been asked in the mailing list but I didn't find any way to search through the m-l, just as for vtk in : http://www.kitware.com/search.html thanks a lot, mathieu -- If all else fail read the instructions Malaterre, Mathieu The John P. Robarts Research Institute Imaging Research Laboratories http://www.imaging.robarts.ca/~mmalat From affable@hd2.dot.net.in Fri Jul 26 11:08:25 2002 From: affable@hd2.dot.net.in (cspl) Date: Fri, 26 Jul 2002 15:38:25 +0530 Subject: [Insight-users] Dilate using ITK binaryDilateImageFilter Message-ID: <001e01c2348c$669ce7e0$5033b801@macinfo.net> This is a multi-part message in MIME format. ------=_NextPart_000_001B_01C234BA.7B49F100 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Dear Mr.Bjorn and Friends, I am working on Dilation of a image.But I am not getting any effect on = o/p.What ever I/P I have given it is=20 giving same o/p.There is no difference.Where exactly I am doing = wrong.Please give me suggestion.I have written code as follows. int main()//(int argc, char **argv) { =20 =20 const char * inputFileName =3D"100";// argv[1]; const char * outputFileName =3D"output";// argv[4]; const unsigned int nx =3D 256;//atoi( argv[2] ); const unsigned int ny =3D 256;//atoi( argv[3] ); typedef unsigned short PixelType; const unsigned int Dimension =3D 2; typedef itk::Image< PixelType, Dimension > ImageType; =20 // Read a Raw File typedef itk::ImageFileReader< ImageType > FileSourceType; typedef itk::RawImageIO RawReaderType; FileSourceType::Pointer fileSource =3D FileSourceType::New(); fileSource->SetFileName( inputFileName ); RawReaderType::Pointer rawReader =3D RawReaderType::New(); rawReader->SetDimensions( 0, nx ); rawReader->SetDimensions( 1, ny ); fileSource->SetImageIO( rawReader ); try { fileSource->Update(); } catch( itk::ExceptionObject & e ) { std::cerr << "Exception caught during Raw file reading " << = std::endl; std::cerr << e << std::endl; return -1; } std::cout << "File succesfully read ! " << std::endl; =20 ImageType::Pointer image =3D fileSource->GetOutput(); =20 //Dialate Erode itk::Size<2> size =3D {256, 256};=20 =20 typedef itk::NeighborhoodAllocator NAllocator; NAllocator *nat=3Dnew NAllocator; typedef itk::Neighborhood = KernelType; KernelType *NA=3Dnew KernelType; std::cout<<"Radius(Input) "<SetRadius(size); unsigned short cv=3DNA->GetCenterValue();=20 std::cout<<"\ncenter value"<<" "<GetRadius();=20 std::cout<<"\nRadius along a two dimension "<GetRadius((const = unsigned long)2); std::cout<<"\nRadius along a one dimension "<GetRadius((const = unsigned long)1); std::cout<<"\n\nsize (total length of sides) of the neighborhood = "<GetSize(); unsigned long size2=3DNA->GetSize((const unsigned long)2); unsigned long size1=3DNA->GetSize((const unsigned long)1); std::cout<<"\nsize2(along a two dimension) "<<" = "< = Morphology; Morphology::Pointer GMF=3D Morphology::New(); GMF->SetInput(image); GMF->SetDilateValue(25000); =20 ImageType::Pointer image1 =3D GMF->GetOutput(); =20 // Write a Raw File typedef itk::ImageFileWriter< ImageType > FileSinkType; typedef itk::RawImageIO RawWriterType; FileSinkType::Pointer fileSink =3D FileSinkType::New(); RawWriterType::Pointer rawWriter =3D RawWriterType::New(); rawWriter->SetDimensions( 0, nx ); rawWriter->SetDimensions( 1, ny ); fileSink->SetImageIO( rawWriter ); fileSink->SetFileName( outputFileName ); fileSink->SetInput( image1); =20 try { fileSink->Write(); } catch( itk::ExceptionObject & e ) { std::cerr << "Exception caught during Raw file writing " << = std::endl; std::cerr << e << std::endl; return -1; } std::cout << "File succesfully writen ! " << std::endl; return 0; } Thanking you, Regards, Ramakrishna ------=_NextPart_000_001B_01C234BA.7B49F100 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear Mr.Bjorn and Friends,
 
I am working on Dilation of a image.But = I am not=20 getting any effect on o/p.What ever I/P I have given it is
giving = same=20 o/p.There is no difference.Where exactly I am doing wrong.Please
give = me=20 suggestion.I have written code as follows.
 
int main()//(int argc, char=20 **argv)
{
 
 
 
 
  const char * = inputFileName =20 =3D"100";// argv[1];
  const char * outputFileName = =3D"output";//=20 argv[4];
 
  const unsigned int nx =3D = 256;//atoi( argv[2]=20 );
  const unsigned int ny =3D 256;//atoi( argv[3] = );
 
  typedef  unsigned=20 short    PixelType;
  const    = unsigned=20 int     Dimension =3D 2;
 
  typedef  itk::Image< = PixelType,=20 Dimension >     ImageType;
 
  = // Read a=20 Raw File
  typedef  itk::ImageFileReader< ImageType=20 >      FileSourceType;
  = typedef =20 itk::RawImageIO<PixelType,Dimension>  =20 RawReaderType;
 

  FileSourceType::Pointer fileSource =3D=20 FileSourceType::New();
  fileSource->SetFileName( = inputFileName=20 );
 
  RawReaderType::Pointer  rawReader  =3D=20 RawReaderType::New();
  rawReader->SetDimensions( 0, nx = );
 =20 rawReader->SetDimensions( 1, ny );
  = fileSource->SetImageIO(=20 rawReader );
  try
    {
    = fileSource->Update();
    }
  catch(=20 itk::ExceptionObject & e )
    = {
   =20 std::cerr << "Exception caught during Raw file reading " <<=20 std::endl;
    std::cerr << e <<=20 std::endl;
    return -1;
    = }
 =20 std::cout << "File succesfully read ! " <<=20 std::endl;
 
  ImageType::Pointer  image =3D=20 fileSource->GetOutput();
 
  //Dialate Erode
 
 itk::Size<2> size =3D {256, 256};
 
 
    typedef=20 itk::NeighborhoodAllocator<PixelType>  =20 NAllocator;
    NAllocator  *nat=3Dnew=20 NAllocator;
    typedef=20 itk::Neighborhood<PixelType,(unsigned int)2,NAllocator>=20 KernelType;
    KernelType  *NA=3Dnew=20 KernelType;
    std::cout<<"Radius(Input) =20 "<<size;
   =20 NA->SetRadius(size);
    unsigned short=20 cv=3DNA->GetCenterValue();
    = std::cout<<"\ncenter=20 value"<<"  "<<cv<<"\n";
   =20 std::cout<<"\nRadius of the neighborhood =20 "<<NA->GetRadius();
    = std::cout<<"\nRadius=20 along a two dimension  "<<NA->GetRadius((const unsigned=20 long)2);
    std::cout<<"\nRadius along a one=20 dimension  "<<NA->GetRadius((const unsigned=20 long)1);
    std::cout<<"\n\nsize (total length = of=20 sides) of the neighborhood = "<<NA->GetSize();
   =20 unsigned long size2=3DNA->GetSize((const unsigned=20 long)2);
    unsigned long = size1=3DNA->GetSize((const=20 unsigned long)1);
    std::cout<<"\nsize2(along = a two=20 dimension) "<<"  "<<size2<<"\nsize1(one=20 dimension)   "<<size1;
    typedef=20 itk::BinaryDilateImageFilter<ImageType,ImageType,KernelType> &= nbsp;=20 Morphology;
    Morphology::Pointer  GMF=3D=20 Morphology::New();
   =20 GMF->SetInput(image);
   =20 GMF->SetDilateValue(25000);
 
   =20 ImageType::Pointer  image1 =3D = GMF->GetOutput();
 
  //=20 Write a Raw File
  typedef  itk::ImageFileWriter< = ImageType=20 >      FileSinkType;
  typedef  = itk::RawImageIO<PixelType,Dimension>   = RawWriterType;
 

  FileSinkType::Pointer   fileSink   = =3D=20 FileSinkType::New();
  RawWriterType::Pointer  = rawWriter  =3D=20 RawWriterType::New();
 
  rawWriter->SetDimensions( 0, nx );
 =20 rawWriter->SetDimensions( 1, ny );
  fileSink->SetImageIO( = rawWriter );
  fileSink->SetFileName( outputFileName = );
 =20 fileSink->SetInput( image1);
 
 
  try
    {
    = fileSink->Write();
    }
  catch(=20 itk::ExceptionObject & e )
    = {
   =20 std::cerr << "Exception caught during Raw file writing " <<=20 std::endl;
    std::cerr << e <<=20 std::endl;
    return -1;
    = }
 =20 std::cout << "File succesfully writen ! " << = std::endl;
 =20 return 0;
 
}
 
 
 
 
 
Thanking you,
 
Regards,
Ramakrishna
------=_NextPart_000_001B_01C234BA.7B49F100-- From salah@gris.uni-tuebingen.de Fri Jul 26 13:48:45 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Fri, 26 Jul 2002 14:48:45 +0200 Subject: [Insight-users] Fw: simple example of using any segmentation filter Message-ID: <00db01c234a2$c75b9750$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_00D8_01C234B3.8AD63680 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello ITK users, I have build a segmentation program that uses the=20 ConnectedThresholdImageFilter on raw images that are read using MetaImageIO... and it worked.=20 I tried to apply the same method with the=20 IsolatedConnectedImageFilter as well as with the = SimpleFuzzyConnectednessScalarImageFilter the program went in an infinite loop.=20 I realy do not know waht should the problem be.=20 1. Do not these filters work with volume data???? 2. if they do, what are the parameters to be set?? to what values?? Thanks in advance for any kind of help. zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_00D8_01C234B3.8AD63680 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 
Hello ITK users,
 
I have build a segmentation = program that uses=20 the
on raw images that are read using=20 MetaImageIO...   and it worked.
 
I tried to apply the same method with = the=20
IsolatedConnectedImageFilter as well as = with the=20 SimpleFuzzyConnectednessScalarImageFilter
 
the program went in an infinite loop. =
 
I realy do not know waht should the = problem be.=20
1. Do not these filters work with = volume=20 data????
2. if they do, what are the parameters = to be set??=20 to what values??
 
 
Thanks in advance for any kind of=20 help.
 
zein
 
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_00D8_01C234B3.8AD63680-- From millerjv@crd.ge.com Fri Jul 26 14:27:58 2002 From: millerjv@crd.ge.com (Miller, James V (Research)) Date: Fri, 26 Jul 2002 09:27:58 -0400 Subject: [Insight-users] Dilate using ITK binaryDilateImageFilter Message-ID: This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C234A8.41B123CE Content-Type: text/plain; charset="iso-8859-1" You haven't set the elements in the structuring element. So you are dilating with a structuring element that only has zeros. Try using an itk::BinaryBallStructuringElement as your structuring element. This will allow you to dilate with a ball (ellipsoid) of prescribe radii. Take a look at Insight/Code/Testing/BasicFilters/itkBinaryDilateImageFilterTest.cxx to see how to setup a structuring element. -----Original Message----- From: cspl [mailto:affable@hd2.dot.net.in] Sent: Friday, July 26, 2002 6:08 AM To: insight-users@public.kitware.com Cc: bhs@pvv.org Subject: [Insight-users] Dilate using ITK binaryDilateImageFilter Dear Mr.Bjorn and Friends, I am working on Dilation of a image.But I am not getting any effect on o/p.What ever I/P I have given it is giving same o/p.There is no difference.Where exactly I am doing wrong.Please give me suggestion.I have written code as follows. int main()//(int argc, char **argv) { const char * inputFileName ="100";// argv[1]; const char * outputFileName ="output";// argv[4]; const unsigned int nx = 256;//atoi( argv[2] ); const unsigned int ny = 256;//atoi( argv[3] ); typedef unsigned short PixelType; const unsigned int Dimension = 2; typedef itk::Image< PixelType, Dimension > ImageType; // Read a Raw File typedef itk::ImageFileReader< ImageType > FileSourceType; typedef itk::RawImageIO RawReaderType; FileSourceType::Pointer fileSource = FileSourceType::New(); fileSource->SetFileName( inputFileName ); RawReaderType::Pointer rawReader = RawReaderType::New(); rawReader->SetDimensions( 0, nx ); rawReader->SetDimensions( 1, ny ); fileSource->SetImageIO( rawReader ); try { fileSource->Update(); } catch( itk::ExceptionObject & e ) { std::cerr << "Exception caught during Raw file reading " << std::endl; std::cerr << e << std::endl; return -1; } std::cout << "File succesfully read ! " << std::endl; ImageType::Pointer image = fileSource->GetOutput(); //Dialate Erode itk::Size<2> size = {256, 256}; typedef itk::NeighborhoodAllocator NAllocator; NAllocator *nat=new NAllocator; typedef itk::Neighborhood KernelType; KernelType *NA=new KernelType; std::cout<<"Radius(Input) "<SetRadius(size); unsigned short cv=NA->GetCenterValue(); std::cout<<"\ncenter value"<<" "<GetRadius(); std::cout<<"\nRadius along a two dimension "<GetRadius((const unsigned long)2); std::cout<<"\nRadius along a one dimension "<GetRadius((const unsigned long)1); std::cout<<"\n\nsize (total length of sides) of the neighborhood "<GetSize(); unsigned long size2=NA->GetSize((const unsigned long)2); unsigned long size1=NA->GetSize((const unsigned long)1); std::cout<<"\nsize2(along a two dimension) "<<" "< Morphology; Morphology::Pointer GMF= Morphology::New(); GMF->SetInput(image); GMF->SetDilateValue(25000); ImageType::Pointer image1 = GMF->GetOutput(); // Write a Raw File typedef itk::ImageFileWriter< ImageType > FileSinkType; typedef itk::RawImageIO RawWriterType; FileSinkType::Pointer fileSink = FileSinkType::New(); RawWriterType::Pointer rawWriter = RawWriterType::New(); rawWriter->SetDimensions( 0, nx ); rawWriter->SetDimensions( 1, ny ); fileSink->SetImageIO( rawWriter ); fileSink->SetFileName( outputFileName ); fileSink->SetInput( image1); try { fileSink->Write(); } catch( itk::ExceptionObject & e ) { std::cerr << "Exception caught during Raw file writing " << std::endl; std::cerr << e << std::endl; return -1; } std::cout << "File succesfully writen ! " << std::endl; return 0; } Thanking you, Regards, Ramakrishna ------_=_NextPart_001_01C234A8.41B123CE Content-Type: text/html; charset="iso-8859-1"
You haven't set the elements in the structuring element. So you are dilating with a structuring
element that only has zeros.
 
Try using an itk::BinaryBallStructuringElement as your structuring element.  This will allow
you to dilate with a ball (ellipsoid) of prescribe radii.
 
Take a look at Insight/Code/Testing/BasicFilters/itkBinaryDilateImageFilterTest.cxx to see
how to setup a structuring element.
 
 
-----Original Message-----
From: cspl [mailto:affable@hd2.dot.net.in]
Sent: Friday, July 26, 2002 6:08 AM
To: insight-users@public.kitware.com
Cc: bhs@pvv.org
Subject: [Insight-users] Dilate using ITK binaryDilateImageFilter

Dear Mr.Bjorn and Friends,
 
I am working on Dilation of a image.But I am not getting any effect on o/p.What ever I/P I have given it is
giving same o/p.There is no difference.Where exactly I am doing wrong.Please
give me suggestion.I have written code as follows.
 
int main()//(int argc, char **argv)
{
 
 
 

  const char * inputFileName  ="100";// argv[1];
  const char * outputFileName ="output";// argv[4];
 
  const unsigned int nx = 256;//atoi( argv[2] );
  const unsigned int ny = 256;//atoi( argv[3] );
 
  typedef  unsigned short    PixelType;
  const    unsigned int     Dimension = 2;
 
  typedef  itk::Image< PixelType, Dimension >     ImageType;
 
  // Read a Raw File
  typedef  itk::ImageFileReader< ImageType >      FileSourceType;
  typedef  itk::RawImageIO<PixelType,Dimension>   RawReaderType;
 

  FileSourceType::Pointer fileSource = FileSourceType::New();
  fileSource->SetFileName( inputFileName );
 
  RawReaderType::Pointer  rawReader  = RawReaderType::New();
  rawReader->SetDimensions( 0, nx );
  rawReader->SetDimensions( 1, ny );
  fileSource->SetImageIO( rawReader );
  try
    {
    fileSource->Update();
    }
  catch( itk::ExceptionObject & e )
    {
    std::cerr << "Exception caught during Raw file reading " << std::endl;
    std::cerr << e << std::endl;
    return -1;
    }
  std::cout << "File succesfully read ! " << std::endl;
 
  ImageType::Pointer  image = fileSource->GetOutput();
 
  //Dialate Erode
 
 itk::Size<2> size = {256, 256};
 

    typedef itk::NeighborhoodAllocator<PixelType>   NAllocator;
    NAllocator  *nat=new NAllocator;
    typedef itk::Neighborhood<PixelType,(unsigned int)2,NAllocator> KernelType;
    KernelType  *NA=new KernelType;
    std::cout<<"Radius(Input)  "<<size;
    NA->SetRadius(size);
    unsigned short cv=NA->GetCenterValue();
    std::cout<<"\ncenter value"<<"  "<<cv<<"\n";
    std::cout<<"\nRadius of the neighborhood  "<<NA->GetRadius();
    std::cout<<"\nRadius along a two dimension  "<<NA->GetRadius((const unsigned long)2);
    std::cout<<"\nRadius along a one dimension  "<<NA->GetRadius((const unsigned long)1);
    std::cout<<"\n\nsize (total length of sides) of the neighborhood "<<NA->GetSize();
    unsigned long size2=NA->GetSize((const unsigned long)2);
    unsigned long size1=NA->GetSize((const unsigned long)1);
    std::cout<<"\nsize2(along a two dimension) "<<"  "<<size2<<"\nsize1(one dimension)   "<<size1;
    typedef itk::BinaryDilateImageFilter<ImageType,ImageType,KernelType>   Morphology;
    Morphology::Pointer  GMF= Morphology::New();
    GMF->SetInput(image);
    GMF->SetDilateValue(25000);
 
    ImageType::Pointer  image1 = GMF->GetOutput();
 
  // Write a Raw File
  typedef  itk::ImageFileWriter< ImageType >      FileSinkType;
  typedef  itk::RawImageIO<PixelType,Dimension>   RawWriterType;
 

  FileSinkType::Pointer   fileSink   = FileSinkType::New();
  RawWriterType::Pointer  rawWriter  = RawWriterType::New();
 
  rawWriter->SetDimensions( 0, nx );
  rawWriter->SetDimensions( 1, ny );
  fileSink->SetImageIO( rawWriter );
  fileSink->SetFileName( outputFileName );
  fileSink->SetInput( image1);
 

  try
    {
    fileSink->Write();
    }
  catch( itk::ExceptionObject & e )
    {
    std::cerr << "Exception caught during Raw file writing " << std::endl;
    std::cerr << e << std::endl;
    return -1;
    }
  std::cout << "File succesfully writen ! " << std::endl;
  return 0;
 
}
 
 
 
 
 
Thanking you,
 
Regards,
Ramakrishna
------_=_NextPart_001_01C234A8.41B123CE-- From salah@gris.uni-tuebingen.de Fri Jul 26 15:11:50 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Fri, 26 Jul 2002 16:11:50 +0200 Subject: [Insight-users] Fw: simple example of using any segmentation filter Message-ID: <010301c234ae$6282ac40$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0100_01C234BF.25FD2460 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi all, The SimpleFuzzyConnectednessScalarImageFilter works for a long time and = produces just a black volume image, i.e. nothing at all can be seen. has anybody an idea where is the problem thanks, Zein ----- Original Message -----=20 From: Zein Salah=20 To: ITK Users=20 Sent: Friday, July 26, 2002 2:48 PM Subject: Fw: simple example of using any segmentation filter=20 Hello ITK users, I have build a segmentation program that uses the=20 ConnectedThresholdImageFilter on raw images that are read using MetaImageIO... and it worked.=20 I tried to apply the same method with the=20 IsolatedConnectedImageFilter as well as with the = SimpleFuzzyConnectednessScalarImageFilter the program went in an infinite loop.=20 I realy do not know waht should the problem be.=20 1. Do not these filters work with volume data???? 2. if they do, what are the parameters to be set?? to what values?? Thanks in advance for any kind of help. zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0100_01C234BF.25FD2460 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi all,
 
The SimpleFuzzyConnectednessScalarImageFilter works = for a=20 long time and produces just a black volume image, i.e. nothing at all = can be=20 seen.
has anybody an idea where is the = problem
 
thanks,
Zein
 
----- Original Message -----=20
From: Zein=20 Salah
Sent: Friday, July 26, 2002 2:48 PM
Subject: Fw: simple example of using any segmentation filter =

 
Hello ITK users,
 
I have build a segmentation = program that uses=20 the
on raw images that are read using=20 MetaImageIO...   and it worked.
 
I tried to apply the same method with = the=20
IsolatedConnectedImageFilter as well as = with the=20 SimpleFuzzyConnectednessScalarImageFilter
 
the program went in an infinite loop. =
 
I realy do not know waht should the = problem be.=20
1. Do not these filters work with = volume=20 data????
2. if they do, what are the parameters = to be set??=20 to what values??
 
 
Thanks in advance for any kind of=20 help.
 
zein
 
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0100_01C234BF.25FD2460-- From yj76@columbia.edu Fri Jul 26 15:31:30 2002 From: yj76@columbia.edu (Yinpeng Jin) Date: Fri, 26 Jul 2002 10:31:30 -0400 Subject: [Insight-users] Fw: simple example of using any segmentation filter References: <010301c234ae$6282ac40$aeb00286@wsigris.unituebingen.de> Message-ID: <002901c234b1$2212d330$3e483b80@segment> This is a multi-part message in MIME format. ------=_NextPart_000_0026_01C2348F.9ABE5DD0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable SimpleFuzzyConnectednessScalarImageFilter was designed to work on any = dimension data. We have been using it for both 2D and 3D, and it works fine as long as the right parameters = are chosen. The minimum set of parameters you need to run = SimpleFuzzyConnectednessScalarImageFilter includes: (1) a seed point that is inside the object of interest. = SetObjectSeed(); (2) the estimation of the mean and variance of the object. SetMean, = SetVariance. (3) a threshold value to generate the binary segmented object. (between = 0 and 1). SetThreshold. you don't need the exact value of mean/variance, but they should be = close to the target object, otherwise you are expecting a black volume. also, the threshold is very important. There are some other parameters you could use to improve the = segmentation and was also implemented in ITK, you need to read the = reference of Fuzzy Connectedness segmentation which was listed inside = the .h file. bad choice of (2) (3) can easily cause an black volume image for the = segmentation result. you can use=20 filter->GetFuzzyScene(); to get a ITK::Image object (in the case of 3D), which is the = fuzzy scene. (the voxel value was scale to [0,65535]). and then you can apply threshold using your own code or other ITK class. = This avoids repeated computations if you got unsatifactory result just = because the bad threshold value. The running time varies a lot depending on how accurate is your = estimation of the mean/variance, also the size of the volume and the = size of the target object, and the noise level of the image data, etc... it could take a very long time if you are dealling with high-res volume = data. and infinite loops are unlikely to happen. Yinpeng. ----- Original Message -----=20 From: Zein Salah=20 To: ITK Users=20 Sent: Friday, July 26, 2002 10:11 AM Subject: [Insight-users] Fw: simple example of using any segmentation = filter Hi all, =20 The SimpleFuzzyConnectednessScalarImageFilter works for a long time = and produces just a black volume image, i.e. nothing at all can be seen. has anybody an idea where is the problem =20 thanks, Zein =20 ----- Original Message -----=20 From: Zein Salah=20 To: ITK Users=20 Sent: Friday, July 26, 2002 2:48 PM Subject: Fw: simple example of using any segmentation filter=20 =20 Hello ITK users, =20 I have build a segmentation program that uses the=20 ConnectedThresholdImageFilter on raw images that are read using MetaImageIO... and it worked.=20 =20 I tried to apply the same method with the=20 IsolatedConnectedImageFilter as well as with the = SimpleFuzzyConnectednessScalarImageFilter =20 the program went in an infinite loop.=20 =20 I realy do not know waht should the problem be.=20 1. Do not these filters work with volume data???? 2. if they do, what are the parameters to be set?? to what values?? =20 =20 Thanks in advance for any kind of help. =20 zein =20 =20 =20 = ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0026_01C2348F.9ABE5DD0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
SimpleFuzzyConnectednessScalarImageFilter was = designed to=20 work on any dimension data. We have been using it
for both 2D and 3D, and it works fine as long as the = right=20 parameters are chosen.
The minimum set of parameters you need = to run SimpleFuzzyConnectednessScalarImageFilter=20 includes:
(1) a seed point that is inside the = object of=20 interest.   SetObjectSeed();
(2) the estimation of the mean and = variance of the=20 object.  SetMean, SetVariance.
(3) a threshold value to generate the = binary=20 segmented object. (between 0 and 1). SetThreshold.
you don't need the exact value of = mean/variance,=20 but they should be close to the target object, otherwise you are = expecting a=20 black volume.
also, the threshold is very = important.
There are some other parameters you = could use to=20 improve the segmentation and was also implemented in ITK, you need to = read the=20 reference of Fuzzy Connectedness segmentation which was listed inside = the .h=20 file.
bad choice of (2) (3) can easily cause = an black=20 volume image for the segmentation result.
you can use
filter->GetFuzzyScene();
to get a ITK::Image<ushort,3> = object (in the=20 case of 3D), which is the fuzzy scene. (the voxel value was scale to=20 [0,65535]).
and then you can apply threshold using = your own=20 code or other ITK class. This avoids repeated computations if you got=20 unsatifactory result just because the bad threshold value.
The running time varies a lot depending = on how=20 accurate is your estimation of the mean/variance, also the size of the = volume=20 and the size of the target object, and the noise level of the image = data,=20 etc...
it could take a very long time if you = are dealling=20 with high-res volume data. and infinite loops are unlikely to=20 happen.
 
Yinpeng.
 
 
----- Original Message -----
From:=20 Zein Salah
To: ITK Users
Sent: Friday, July 26, 2002 = 10:11=20 AM
Subject: [Insight-users] Fw: = simple=20 example of using any segmentation filter

Hi all,
 
The SimpleFuzzyConnectednessScalarImageFilter = works for a=20 long time and produces just a black volume image, i.e. nothing at all = can be=20 seen.
has anybody an idea where is the = problem
 
thanks,
Zein
 
----- Original Message -----=20
From: Zein Salah
Sent: Friday, July 26, 2002 2:48 PM
Subject: Fw: simple example of using any segmentation = filter=20

 
Hello ITK users,
 
I have build a segmentation = program that=20 uses the
on raw images that are read using=20 MetaImageIO...   and it worked.
 
I tried to apply the same method with = the=20
IsolatedConnectedImageFilter as well = as with the=20 SimpleFuzzyConnectednessScalarImageFilter
 
the program went in an infinite loop. =
 
I realy do not know waht should the = problem be.=20
1. Do not these filters work with = volume=20 data????
2. if they do, what are the = parameters to be=20 set?? to what values??
 
 
Thanks in advance for any kind of=20 help.
 
zein
 
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20
------=_NextPart_000_0026_01C2348F.9ABE5DD0-- From bwyman@insightful.com Fri Jul 26 17:43:49 2002 From: bwyman@insightful.com (Bradley Wyman) Date: Fri, 26 Jul 2002 09:43:49 -0700 Subject: [Insight-users] BSpline Interpolation Message-ID: <0AED0D29DB783641A47A3BD7C4FE147601470B@se2kexch02.insightful.com> Mathieu, There is only a subtle difference between = BSplineResampleImageFilterBase and = BSplineCenteredResampleImageFilterBase. If you are interested in the = details you can look at the references (see more on the help pages or = look at the references in the .h files). However, I would suggest just = using the BSplineResampleImageFilterBase as this is the more basic = implementation. =20 Having said that I don't think this filter will help solve your = problem. These filters are configured to reduce or expand the image by = a factor of two in all directions. And you only want to expand it in = the slice direction. The modification to expand/reduce in only = specified directions should be straight forward and would be a good = addition. I'll look into this. Another option would be the BSplineInterpolateImageFunction:=20 http://public.kitware.com/Insight/Web/Doxygen/html/classitk_1_1BSplineInt= erpolateImageFunction.html You would need to loop through the points on your image and generate the = missing slices but it should meet your needs. -Brad Wyman From luis.ibanez@kitware.com Fri Jul 26 19:08:35 2002 From: luis.ibanez@kitware.com (Luis Ibanez) Date: Fri, 26 Jul 2002 14:08:35 -0400 Subject: [Insight-users] Re: Help in identifying the Min and max intensity values References: <005301c23225$d7e78bd0$5033b801@macinfo.net> Message-ID: <3D419023.1000202@kitware.com> Hi cspl, In order to use the itkMinimumMaximumImageFilter: http://www.itk.org/Insight/Doxygen/html/classitk_1_1MinimumMaximumImageFilter.html to compute the lowest and highest intensity values in an image you have to call first the "Update()" method of the filter. The values returned by GetMinimum() and GetMaximum() are only valid after calling Update(), before that they are just initialized to the numeric min,max values of the pixel type. You may want to use the alternative "Calculator" class: http://www.itk.org/Insight/Doxygen/html/classitk_1_1MinimumMaximumImageCalculator.html Which will not act as an image filter. In order to use this Calculator class you must call first "Compute()" and then GetMinimum(), and/or GetMaximum(). If you are interested in only one of them, you can use just "ComputeMinimum()" or "ComputeMaximum()" before calling GetMinimum(), GetMaximum(). Hope that helps Luis ============================================ cspl wrote: > > I am working with class itkMinimumMaximumImageFilter.In that I calling > functions > Getmaximum,GetMinimum functions.They are returning min and max range of > pixel type.I want image > low intensity value and high intensity value of image. For that which > class is suitable to use. > > Thanking you, > Regards, > Ramakrishna > From affable@hd2.dot.net.in Sat Jul 27 14:53:22 2002 From: affable@hd2.dot.net.in (cspl) Date: Sat, 27 Jul 2002 19:23:22 +0530 Subject: [Insight-users] MRIRegistration example has problems Message-ID: <001f01c23574$fcf8afb0$5033b801@macinfo.net> This is a multi-part message in MIME format. ------=_NextPart_000_001C_01C235A3.128C6F50 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Dear friends, I am working on MRIRegistration example.When I tried to execute=20 the application i got problem at StartRegistration().Please send me=20 some information regarding method and setting registration parameters.=20 =20 Regards, CSPL ------=_NextPart_000_001C_01C235A3.128C6F50 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear friends,

I am working on MRIRegistration = example.When I=20 tried to execute
the  application i got problem at=20 StartRegistration().Please send me
some information regarding method and = setting=20 registration parameters.=20
 
Regards,
CSPL
------=_NextPart_000_001C_01C235A3.128C6F50-- From affable@hd2.dot.net.in Sat Jul 27 15:19:39 2002 From: affable@hd2.dot.net.in (cspl) Date: Sat, 27 Jul 2002 19:49:39 +0530 Subject: [Insight-users] erode using a buffer Message-ID: <003901c23578$a676b3e0$5033b801@macinfo.net> This is a multi-part message in MIME format. ------=_NextPart_000_0034_01C235A6.BE3FCA10 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Dear Mr.Bjorn & Friends, I got the o/p using files.Now I am giving i/p from buffer and put o/p in = buffer.I am getting o/p using itkGrayScaleDialteImageFilter. when using itkgrayscaleErodeImageFilter o/p is not getting.It is giving = some black screen. Volume* IntensityScaleVolume(Volume *vol) {=20 if (vol =3D=3D NULL) return ; unsigned short *Buffer =3D new unsigned short[vol->width * vol->height = * vol->depth]; typedef unsigned short PixelType; Buffer =3D (unsigned short *) vol->Mem; typedef itk::Image ImageType; itk::RawImageIO::Pointer output_io =3D itk::RawImageIO::New(); =20 output_io->SetByteOrderToLittleEndian(); output_io->SetFileTypeToBinary(); output_io->SetFileDimensionality(3); // Initialize the initial and target volumes. ImageType::Pointer vol_init =3D ImageType::New(); ImageType::Pointer vol_init1 =3D ImageType::New(); =20 ImageType::SizeType sz; sz[0] =3D vol->width; sz[1] =3D vol->height; sz[2]=3Dvol->depth;=20 =20 =20 ImageType::IndexType idx; idx[0] =3D 0; idx[1] =3D 0; idx[2] =3D 0; unsigned short pval; =20 ImageType::RegionType reg; =20 reg.SetSize(sz); reg.SetIndex(idx); =20 vol_init->SetRegions(reg); vol_init->Allocate(); =20 for(unsigned int z=3D0; zdepth; ++z ) {=20 idx[2]=3Dz; =20 for (unsigned int y =3D 0; y < vol->height; ++y) { idx[1] =3D y; for (unsigned int x =3D 0; x < vol->width; ++x) { idx[0] =3D x; vol_init->SetPixel(idx, *(Buffer = +(z*vol->height*vol->width)+y *vol->width +x) ); =20 } } } =20 =20 //Dilate Erode itk::Size<3> size =3D {5,5,2};=20 typedef itk::NeighborhoodAllocator NAllocator; NAllocator *nat=3Dnew NAllocator; typedef itk::BinaryBallStructuringElement KernelType; KernelType *NA=3Dnew KernelType; NA->SetRadius(size); NA->CreateStructuringElement(); =20 typedef itk::GrayscaleErodeImageFilter = Morphology; Morphology::Pointer GMF=3D Morphology::New(); GMF->SetInput(vol_init); GMF->SetKernel(*NA); GMF->Update(); vol_init=3DGMF->GetOutput();///here I think I am doing something wrong =20 =20 for(unsigned int z=3D0; zdepth; ++z ) { idx[2]=3Dz; =20 for (unsigned int y =3D 0; y < vol->height; ++y) { idx[1] =3D y; for (unsigned int x =3D 0; x < vol->width; ++x) { idx[0] =3D x; //here it is not able to write into buffer *(Buffer +(z*vol->height*vol->width)+y *vol->width = +x)=3Dvol_init->GetPixel(idx); =20 } } } vol->Mem =3D Buffer; return vol; =20 } Please give me suggestion. Thanking you, Regards, Ramakrishna ------=_NextPart_000_0034_01C235A6.BE3FCA10 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear Mr.Bjorn & = Friends,
 
I got the o/p using files.Now I am = giving i/p from=20 buffer and put o/p in buffer.I am getting o/p using=20 itkGrayScaleDialteImageFilter.
when using = itkgrayscaleErodeImageFilter o/p is=20 not getting.It is giving some black screen.
 

Volume* IntensityScaleVolume(Volume *vol)
 
 if (vol =3D=3D NULL) return ;
 unsigned short *Buffer = =3D new=20 unsigned short[vol->width * vol->height *=20 vol->depth];
 typedef  unsigned short   =20 PixelType;
 Buffer =3D (unsigned short *) = vol->Mem;
 typedef=20 itk::Image<unsigned short,3>=20 ImageType;
 itk::RawImageIO<unsigned short, 3>::Pointer=20 output_io
       =3D = itk::RawImageIO<unsigned=20 short, 3>::New();
 
    =20 output_io->SetByteOrderToLittleEndian();
    =20 output_io->SetFileTypeToBinary();
    =20 output_io->SetFileDimensionality(3);
 
     // Initialize the initial and target=20 volumes.
        = ImageType::Pointer=20 vol_init =3D ImageType::New();
 ImageType::Pointer vol_init1 =3D = ImageType::New();
   
   =20 ImageType::SizeType sz;
    sz[0] =3D=20 vol->width;
    sz[1] =3D=20 vol->height;
    sz[2]=3Dvol->depth;=20
   
   
   =20 ImageType::IndexType idx;
    idx[0] =3D=20 0;
    idx[1] =3D 0;
    idx[2] =3D=20 0;
    unsigned short pval;
   =20
    ImageType::RegionType reg;  =
   =20 reg.SetSize(sz);
    = reg.SetIndex(idx);
   =20
    = vol_init->SetRegions(reg);
   =20 vol_init->Allocate();
   
 for(unsigned int = z=3D0;=20 z<vol->depth; ++z )
 {=20
  idx[2]=3Dz;
 
      = for=20 (unsigned int y =3D 0; y < vol->height;=20 ++y)
       =20 {
          idx[1] =3D=20 y;
          for = (unsigned int x=20 =3D 0; x < vol->width;=20 ++x)
           = ;=20 {
           &n= bsp; =20 idx[0] =3D=20 x;
           &= nbsp;=20 vol_init->SetPixel(idx, *(Buffer +(z*vol->height*vol->width)+y=20 *vol->width +x) );
 =20
           =20 }
       =20 }
 }
         =20
   
 
  //Dilate Erode
 itk::Size<3> size =3D {5,5,2}; =
    typedef=20 itk::NeighborhoodAllocator<PixelType>  =20 NAllocator;
    NAllocator  *nat=3Dnew=20 NAllocator;
    typedef=20 itk::BinaryBallStructuringElement<unsigned = short,3>
   =20 KernelType;
   KernelType  *NA=3Dnew=20 KernelType;
 NA->SetRadius(size);
 NA->CreateStruct= uringElement();
 
 
 typedef=20 itk::GrayscaleErodeImageFilter<ImageType,ImageType,KernelType> = ; =20 Morphology;
 Morphology::Pointer  GMF=3D=20 Morphology::New();
 GMF->SetInput(vol_init);
 GMF->= SetKernel(*NA);
 GMF->Update();
 vol_init=3DGMF->Ge= tOutput();///here=20 I think I am doing something wrong
 
 
 
 for(unsigned int z=3D0; = z<vol->depth; ++z=20 )
 {
  idx[2]=3Dz;
 
   &n= bsp; =20 for (unsigned int y =3D 0; y < vol->height;=20 ++y)
       =20 {
          idx[1] =3D=20 y;
          for = (unsigned int x=20 =3D 0; x < vol->width;=20 ++x)
           = ;=20 {
           &n= bsp; =20 idx[0] =3D x;
   //here it is not able to write into=20 buffer
        *(Buffer=20 +(z*vol->height*vol->width)+y *vol->width=20 +x)=3Dvol_init->GetPixel(idx);
      =     =20
    }
       =20 }
 }
 
 vol->Mem =3D Buffer;
    return = vol;
 =20  
}
 

Please give me suggestion.
 
Thanking you,
Regards,
Ramakrishna
------=_NextPart_000_0034_01C235A6.BE3FCA10-- From cates@sci.utah.edu Mon Jul 29 02:25:43 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Sun, 28 Jul 2002 19:25:43 -0600 (MDT) Subject: [Insight-users] New ITK segmentation software Message-ID: Hello everyone, I have checked a new example application into the Insight repository under Examples/SegmentationEditor. The SegmentationEditor is an interactive tool developed in ITK and VTK for semi-automated segmentation of image volumes. This is an expanded version of the software we (U of Utah) demonstrated at the June Insight developers meeting in Boston. As described in http://www.itk.org/HTML/SegmentationEditor.html: `The SE tool is a special editor which allows you to construct a labeled image using the output from the Insight watershed segmentation algorithm. Hand labeling of images is also supported. The goal of the software is to combine human interaction with automated image processing techniques to produce a better result than either technique can give on its own.' Directions for building/running the code can be found in Insight/Examples/SegmentationEditor/README.txt. Let me know of any problems building or running this software. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates From salah@gris.uni-tuebingen.de Mon Jul 29 10:10:54 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Mon, 29 Jul 2002 11:10:54 +0200 Subject: [Insight-users] Fw: unexpected results in RawImageReaderViewer Message-ID: <00ae01c236df$d7d54380$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_00AB_01C236F0.9B522CA0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everybody, I am building a segmentation example based on on the = IsolatedConnectedImageFilter. Can anybody tell me what are the parameters that should be set and to = what ideal values. thanks in advance for any help. Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_00AB_01C236F0.9B522CA0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 
 
Hi everybody,
 
I am building a segmentation example = based on on=20 the IsolatedConnectedImageFilter.
Can anybody tell me what are the = parameters that=20 should be set and to what ideal values.
 
thanks in advance for any = help.
 
Zein
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_00AB_01C236F0.9B522CA0-- From salah@gris.uni-tuebingen.de Mon Jul 29 11:53:48 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Mon, 29 Jul 2002 12:53:48 +0200 Subject: [Insight-users] jpg to png conversion Message-ID: <00f601c236ee$38103da0$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_00F3_01C236FE.FB5D8B40 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Dear all ITk users, How can I convert a jpg image to png image intended for the use with = itk??? thanks Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_00F3_01C236FE.FB5D8B40 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear all ITk users,
 
How can I convert a jpg image to png = image intended=20 for the use with itk???
thanks
Zein
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_00F3_01C236FE.FB5D8B40-- From lorensen@crd.ge.com Mon Jul 29 12:24:23 2002 From: lorensen@crd.ge.com (Lorensen, William E (Research)) Date: Mon, 29 Jul 2002 07:24:23 -0400 Subject: [Insight-users] MI Registration Message-ID: Shannon, Are you starting from scratch or using one of the examples? The MR registration code I used is in: Insight/Examples/MRIRegistration Bill -----Original Message----- From: Shannon Hastings [mailto:shasting@bmi.ohio-state.edu] Sent: Thursday, July 25, 2002 2:17 PM To: insight-users@public.kitware.com Subject: [Insight-users] MI Registration I am just starting to play with the MI Registration Metric I am having some trouble getting any good results. I am for starters just trying to get it to register the same volume correctly with itself. This volume is a set of PGM images. The algorithm seems to always return some rotation in Z even though it is trying to register against the same data. I would think that it should return a transform back that is close to zero. Anyone have any idea? --shannon -- Shannon Hastings Research Specialist Ohio State University Medical Center Department of Biomedical Informatics 1-614-688-3470 shasting@bmi.ohio-state.edu _______________________________________________ Insight-users mailing list Insight-users@public.kitware.com http://public.kitware.com/mailman/listinfo/insight-users From lorensen@crd.ge.com Mon Jul 29 12:25:23 2002 From: lorensen@crd.ge.com (Lorensen, William E (Research)) Date: Mon, 29 Jul 2002 07:25:23 -0400 Subject: [Insight-users] MRIRegistration example has problems Message-ID: What problems are you having? -----Original Message----- From: cspl [mailto:affable@hd2.dot.net.in] Sent: Saturday, July 27, 2002 9:53 AM To: insight-users@public.kitware.com Cc: Luis Ibanez Subject: [Insight-users] MRIRegistration example has problems Dear friends, I am working on MRIRegistration example.When I tried to execute the application i got problem at StartRegistration().Please send me some information regarding method and setting registration parameters. Regards, CSPL From affable@hd2.dot.net.in Mon Jul 29 15:51:21 2002 From: affable@hd2.dot.net.in (cspl) Date: Mon, 29 Jul 2002 20:21:21 +0530 Subject: [Insight-users] MRIRegistration example has problems References: Message-ID: <003d01c2370f$687b1890$5033b801@macinfo.net> Dear Friends, I am working on MRIRegistration example given with ITK.When I execute the application, It is giving an Error. I found that 'fixed' and 'moving' imges are not getting updated .When I tried to update those images using UPDATE(),I got runtime error "Debug error".When I removed this update statement, I got problem at Start Registration().Error is not informative.It is showing only "Debug Error" Please send me some information regarding method and setting registration parameters. I am include a part of the code below. #include #include #include #include "vtk2itk2vtk.h" // vtk classes #include "vtkImageReader.h" #include "vtkImageExport.h" #include "vtkTransform.h" // itk classes #include "itkExceptionObject.h" #include "itkImage.h" #include "itkImageRegionIterator.h" #include "itkNormalizeImageFilter.h" #include "itkChangeInformationImageFilter.h" #include "itkShrinkImageFilter.h" #include "itkQuaternionRigidTransform.h" #include "itkQuaternionRigidTransformGradientDescentOptimizer.h" #include "itkMutualInformationImageToImageMetric.h" #include "itkLinearInterpolateImageFunction.h" #include "itkImageRegistrationMethod.h" #include "vnl/vnl_math.h" #include "OptionList.h" void print_usage(); int main(int argc, char **argv) { unsigned int sf[3]; if (argc < 2) { print_usage(); exit(1); } // Process Options OptionList options(argc, argv) ; std::string study1Prefix; std::vector study1Resolution(3); std::vector study1Spacing(3); std::string study2Prefix; std::vector study2Resolution(3); std::vector study2Spacing(3); std::vector shrinkFactors; float translateScale; float standardDeviation; float learningRate; int numberOfIterations; int numberOfSamples; try { options.GetStringOption("study1Prefix", &study1Prefix, true); options.GetMultiDoubleOption("study1Spacing", &study1Spacing, true); options.GetMultiIntOption("study1Resolution", &study1Resolution, true); options.GetStringOption("study2Prefix", &study2Prefix, true); options.GetMultiDoubleOption("study2Spacing", &study2Spacing, true); options.GetMultiIntOption("study2Resolution", &study2Resolution, true); options.GetMultiIntOption("shrink", &shrinkFactors, true); translateScale = options.GetDoubleOption("translateScale", true); standardDeviation = options.GetDoubleOption("standardDeviation", true); learningRate = options.GetDoubleOption("learningRate", true); numberOfIterations = options.GetIntOption("numberOfIterations", true); numberOfSamples = options.GetIntOption("numberOfSamples", true); } catch(OptionList::RequiredOptionMissing e) { std::cerr << "Error: The '" << e.OptionTag << "' option is required but missing." << std::endl ; exit(0) ; } // Declare all the filters typedef itk::Image InputType; typedef itk::Image OutputType; typedef itk::NormalizeImageFilter NormalizeFilter; typedef itk::ChangeInformationImageFilter ChangeInformationFilter; typedef itk::ShrinkImageFilter ShrinkFilter; // Registration types typedef itk::QuaternionRigidTransform TransformType; typedef itk::QuaternionRigidTransformGradientDescentOptimizer OptimizerType; typedef itk::MutualInformationImageToImageMetric MetricType; typedef itk:: LinearInterpolateImageFunction InterpolatorType; typedef itk::ImageRegistrationMethod RegistrationType; // Moving ---------------- vtkImageReader *movingReader = vtkImageReader::New(); movingReader->SetDataScalarTypeToUnsignedShort(); movingReader->SetFilePrefix(study1Prefix.c_str()); //"E:\\outprojects\\Registration\\Images\\"); movingReader->SetDataByteOrderToBigEndian(); movingReader->SetDataExtent(0,study1Resolution[0] - 1,0,study1Resolution[1] - 1,1,study1Resolution[2]);// study1Resolution[0] - 1, movingReader->SetDataSpacing(study1Spacing[0],study1Spacing[1],study1Sp acing[2]);//study1Spacing[0], vtkImageExport *movingVtkExporter = vtkImageExport::New(); movingVtkExporter->SetInput(movingReader->GetOutput()); typedef itk::VTKImageImport ImageImportType; ImageImportType::Pointer movingItkImporter = ImageImportType::New(); ConnectPipelines(movingVtkExporter, movingItkImporter); NormalizeFilter::Pointer movingNormalize = NormalizeFilter::New(); movingNormalize->SetInput(movingItkImporter->GetOutput()); sf[0] = shrinkFactors[0]; sf[1] = shrinkFactors[1]; sf[2] = shrinkFactors[2]; ShrinkFilter::Pointer movingShrink = ShrinkFilter::New(); movingShrink->SetInput(movingNormalize->GetOutput()); movingShrink->SetShrinkFactors(sf); ChangeInformationFilter::Pointer movingChange = ChangeInformationFilter::New(); movingChange->SetInput(movingShrink->GetOutput()); movingChange->CenterImageOn(); // Fixed ---------------- vtkImageReader *fixedReader = vtkImageReader::New(); fixedReader->SetDataScalarTypeToUnsignedShort(); fixedReader->SetFilePrefix(study2Prefix.c_str()); fixedReader->SetDataByteOrderToBigEndian(); fixedReader->SetDataExtent(0,study1Resolution[0] - 1,0,study1Resolution[1] - 1,1,study1Resolution[2]);// study1Resolution[0] - 1, fixedReader->SetDataSpacing(study1Spacing[0],study1Spacing[1],study1Spa cing[2]);//study1Spacing[0], fixedReader->SetDataByteOrderToBigEndian(); vtkImageExport *fixedVtkExporter = vtkImageExport::New(); fixedVtkExporter->SetInput(fixedReader->GetOutput()); ImageImportType::Pointer fixedItkImporter = ImageImportType::New(); ConnectPipelines(fixedVtkExporter, fixedItkImporter); NormalizeFilter::Pointer fixedNormalize = NormalizeFilter::New(); fixedNormalize->SetInput(fixedItkImporter->GetOutput()); sf[0] = shrinkFactors[0]; sf[1] = shrinkFactors[1]; sf[2] = shrinkFactors[2]; ShrinkFilter::Pointer fixedShrink = ShrinkFilter::New(); fixedShrink->SetInput(fixedNormalize->GetOutput()); fixedShrink->SetShrinkFactors(sf); ChangeInformationFilter::Pointer fixedChange = ChangeInformationFilter::New(); fixedChange->SetInput(fixedShrink->GetOutput()); fixedChange->CenterImageOn(); AfxMessageBox("Before update"); try { fixedChange->Update(); movingChange->Update(); } catch (itk::ExceptionObject& e) { std::cerr << "Exception detected: " << e; return -1; } AfxMessageBox("After update"); //----------------------------------------------------------- // Set up the registrator //----------------------------------------------------------- MetricType::Pointer metric = MetricType::New(); TransformType::Pointer transform = TransformType::New(); OptimizerType::Pointer optimizer = OptimizerType::New(); InterpolatorType::Pointer interpolator = InterpolatorType::New(); RegistrationType::Pointer registration = RegistrationType::New(); RegistrationType::ParametersType guess(transform->GetNumberOfParameters() ); guess.Fill(0); guess[1] = 1.0; // The guess is: a quaternion followed by a translation std::cerr << "Enter a 7 tuple guess: "; std::cin >> guess; std::cerr << guess << std::endl; registration->SetInitialTransformParameters (guess); // Set translation scale typedef OptimizerType::ScalesType ScaleType; ScaleType scales(transform->GetNumberOfParameters()); scales.Fill( 1.0 ); for( unsigned j = 4; j < 7; j++ ) { scales[j] = 1.0 / vnl_math_sqr(translateScale); } // Set metric related parameters metric->SetMovingImageStandardDeviation( standardDeviation ); metric->SetFixedImageStandardDeviation( standardDeviation ); metric->SetNumberOfSpatialSamples( numberOfSamples ); // Connect up the components registration->SetMetric(metric); registration->SetOptimizer(optimizer); registration->SetTransform(transform); registration->SetInterpolator(interpolator); registration->SetFixedImage(fixedChange->GetOutput()); registration->SetMovingImage(movingChange->GetOutput()); // Setup the optimizer optimizer->SetScales(scales); //optimizer->MaximizeOn(); optimizer->SetNumberOfIterations( numberOfIterations ); optimizer->SetLearningRate( learningRate ); // Start registration registration->StartRegistration(); Regards, CSPL ----- Original Message ----- From: "Lorensen, William E (Research)" To: "'cspl'" ; Cc: "Luis Ibanez" Sent: Monday, July 29, 2002 4:55 PM Subject: RE: [Insight-users] MRIRegistration example has problems > What problems are you having? > > > -----Original Message----- > From: cspl [mailto:affable@hd2.dot.net.in] > Sent: Saturday, July 27, 2002 9:53 AM > To: insight-users@public.kitware.com > Cc: Luis Ibanez > Subject: [Insight-users] MRIRegistration example has problems > > > Dear friends, > > I am working on MRIRegistration example.When I tried to execute > the application i got problem at StartRegistration().Please send me > some information regarding method and setting registration parameters. > > Regards, > CSPL > > From galicjan@yahoo.com Mon Jul 29 17:31:55 2002 From: galicjan@yahoo.com (Jarek Sacha) Date: Mon, 29 Jul 2002 09:31:55 -0700 (PDT) Subject: [Insight-users] New ITK segmentation software In-Reply-To: Message-ID: <20020729163155.74572.qmail@web20906.mail.yahoo.com> --- Joshua Cates wrote: > Hello everyone, > > I have checked a new example application into the Insight repository > under Examples/SegmentationEditor. The SegmentationEditor is an > ... > Let me know of any problems building or running this software. Compilation of the SegmentationEditor example fails with messages: ... c++ -rdynamic -shared -O2 -ftemplate-depth-50 -o libvtkWSTCommonPython.so vtkWSTCommonPythonInit.o vtkBinaryVolumePython.o vtkBinaryVolumeLogicPython.o vtkBoundingBoxPython.o vtkPatchedImageReaderPython.o vtkPatchedLookupTablePython.o vtkWSBoundingBoxManagerPython.o vtkWSLookupTableManagerPython.o vtkBinaryVolumePython.o vtkBinaryVolumeLogicPython.o vtkBoundingBoxPython.o vtkPatchedImageReaderPython.o vtkPatchedLookupTablePython.o vtkWSBoundingBoxManagerPython.o vtkWSLookupTableManagerPython.o vtkITKWatershedFilterAndWriterPython.o ... vtkBinaryVolumePython.o: In function `PyVTKClass_vtkBinaryVolumeNew': vtkBinaryVolumePython.o(.text+0x724): multiple definition of `PyVTKClass_vtkBinaryVolumeNew' vtkBinaryVolumePython.o(.text+0x724): first defined here vtkBinaryVolumeLogicPython.o: In function `PyVTKClass_vtkBinaryVolumeLogicNew': vtkBinaryVolumeLogicPython.o(.text+0x15e0): multiple definition of `PyVTKClass_vtkBinaryVolumeLogicNew' vtkBinaryVolumeLogicPython.o(.text+0x15e0): first defined here vtkBoundingBoxPython.o: In function `PyVTKClass_vtkBoundingBoxNew': vtkBoundingBoxPython.o(.text+0x2f0): multiple definition of `PyVTKClass_vtkBoundingBoxNew' vtkBoundingBoxPython.o(.text+0x2f0): first defined here vtkPatchedImageReaderPython.o: In function `PyVTKClass_vtkPatchedImageReaderNew': vtkPatchedImageReaderPython.o(.text+0x846c): multiple definition of `PyVTKClass_vtkPatchedImageReaderNew' vtkPatchedImageReaderPython.o(.text+0x846c): first defined here vtkPatchedLookupTablePython.o: In function `PyVTKClass_vtkPatchedLookupTableNew': vtkPatchedLookupTablePython.o(.text+0x482c): multiple definition of `PyVTKClass_vtkPatchedLookupTableNew' vtkPatchedLookupTablePython.o(.text+0x482c): first defined here vtkWSBoundingBoxManagerPython.o: In function `PyVTKClass_vtkWSBoundingBoxManagerNew': vtkWSBoundingBoxManagerPython.o(.text+0xb48): multiple definition of `PyVTKClass_vtkWSBoundingBoxManagerNew' vtkWSBoundingBoxManagerPython.o(.text+0xb48): first defined here vtkWSLookupTableManagerPython.o: In function `PyVTKClass_vtkWSLookupTableManagerNew': vtkWSLookupTableManagerPython.o(.text+0x2074): multiple definition of `PyVTKClass_vtkWSLookupTableManagerNew' vtkWSLookupTableManagerPython.o(.text+0x2074): first defined here collect2: ld returned 1 exit status make[7]: *** [libvtkWSTCommonPython.so] Error 1 ... The system runs Red Hat Linux 7.3 and gcc 2.96-110. Jarek __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From cates@sci.utah.edu Mon Jul 29 18:07:45 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Mon, 29 Jul 2002 11:07:45 -0600 (MDT) Subject: [Insight-users] New ITK segmentation software In-Reply-To: <20020729163155.74572.qmail@web20906.mail.yahoo.com> Message-ID: Hi Jarek, Something in your CMake configuration seems to be causing an attempted wrap for Python, which the code is not set up to do (nor does it need to, only Tcl wrapping is needed). I'll look through the CMake configuration to see if I can find the cause (I may have to consult the CMake experts on this one). In the meantime, you can try disabling Python wrapping in your own setup, perhaps it is picking up this setting from your VTK build. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Mon, 29 Jul 2002, Jarek Sacha wrote: > --- Joshua Cates wrote: > > Hello everyone, > > > > I have checked a new example application into the Insight repository > > under Examples/SegmentationEditor. The SegmentationEditor is an > > ... > > Let me know of any problems building or running this software. > > Compilation of the SegmentationEditor example fails with messages: > > ... > c++ -rdynamic -shared -O2 -ftemplate-depth-50 -o > libvtkWSTCommonPython.so vtkWSTCommonPythonInit.o > vtkBinaryVolumePython.o vtkBinaryVolumeLogicPython.o > vtkBoundingBoxPython.o vtkPatchedImageReaderPython.o > vtkPatchedLookupTablePython.o vtkWSBoundingBoxManagerPython.o > vtkWSLookupTableManagerPython.o vtkBinaryVolumePython.o > vtkBinaryVolumeLogicPython.o vtkBoundingBoxPython.o > vtkPatchedImageReaderPython.o vtkPatchedLookupTablePython.o > vtkWSBoundingBoxManagerPython.o vtkWSLookupTableManagerPython.o > vtkITKWatershedFilterAndWriterPython.o ... > > vtkBinaryVolumePython.o: In function `PyVTKClass_vtkBinaryVolumeNew': > vtkBinaryVolumePython.o(.text+0x724): multiple definition of > `PyVTKClass_vtkBinaryVolumeNew' > vtkBinaryVolumePython.o(.text+0x724): first defined here > vtkBinaryVolumeLogicPython.o: In function > `PyVTKClass_vtkBinaryVolumeLogicNew': > vtkBinaryVolumeLogicPython.o(.text+0x15e0): multiple definition of > `PyVTKClass_vtkBinaryVolumeLogicNew' > vtkBinaryVolumeLogicPython.o(.text+0x15e0): first defined here > vtkBoundingBoxPython.o: In function `PyVTKClass_vtkBoundingBoxNew': > vtkBoundingBoxPython.o(.text+0x2f0): multiple definition of > `PyVTKClass_vtkBoundingBoxNew' > vtkBoundingBoxPython.o(.text+0x2f0): first defined here > vtkPatchedImageReaderPython.o: In function > `PyVTKClass_vtkPatchedImageReaderNew': > vtkPatchedImageReaderPython.o(.text+0x846c): multiple definition of > `PyVTKClass_vtkPatchedImageReaderNew' > vtkPatchedImageReaderPython.o(.text+0x846c): first defined here > vtkPatchedLookupTablePython.o: In function > `PyVTKClass_vtkPatchedLookupTableNew': > vtkPatchedLookupTablePython.o(.text+0x482c): multiple definition of > `PyVTKClass_vtkPatchedLookupTableNew' > vtkPatchedLookupTablePython.o(.text+0x482c): first defined here > vtkWSBoundingBoxManagerPython.o: In function > `PyVTKClass_vtkWSBoundingBoxManagerNew': > vtkWSBoundingBoxManagerPython.o(.text+0xb48): multiple definition of > `PyVTKClass_vtkWSBoundingBoxManagerNew' > vtkWSBoundingBoxManagerPython.o(.text+0xb48): first defined here > vtkWSLookupTableManagerPython.o: In function > `PyVTKClass_vtkWSLookupTableManagerNew': > vtkWSLookupTableManagerPython.o(.text+0x2074): multiple definition of > `PyVTKClass_vtkWSLookupTableManagerNew' > vtkWSLookupTableManagerPython.o(.text+0x2074): first defined here > collect2: ld returned 1 exit status > make[7]: *** [libvtkWSTCommonPython.so] Error 1 > ... > > The system runs Red Hat Linux 7.3 and gcc 2.96-110. > > Jarek > > __________________________________________________ > Do You Yahoo!? > Yahoo! Health - Feel better, live better > http://health.yahoo.com > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From galicjan@yahoo.com Mon Jul 29 19:18:01 2002 From: galicjan@yahoo.com (Jarek Sacha) Date: Mon, 29 Jul 2002 11:18:01 -0700 (PDT) Subject: [Insight-users] New ITK segmentation software - VC problems In-Reply-To: Message-ID: <20020729181801.95632.qmail@web20906.mail.yahoo.com> --- Joshua Cates wrote: > I have checked a new example application into the Insight repository ... > Let me know of any problems building or running this software. My VC++ 6.0 build fails on SegmentationEditor/Common/vtkBinaryEditor. Errors and warnings are at the end of the message. Jarek ----------------------------- vtkBinaryVolume.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.h(44) : warning C4800: 'unsigned char' : forcing value to bool 'true' or 'false' (performance warning) D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(24) : warning C4273: 'vtkBinaryVolume::vtkBinaryVolume' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(31) : warning C4273: 'New' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(43) : warning C4273: 'Clear' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(62) : warning C4273: 'WriteToDisk' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(73) : error C2664: 'write' : cannot convert parameter 1 from 'unsigned char *' to 'const char *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(74) : error C2664: 'write' : cannot convert parameter 1 from 'unsigned char *' to 'const char *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(88) : warning C4273: 'ReadFromDisk' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(108) : error C2664: 'read' : cannot convert parameter 1 from 'unsigned char *' to 'char *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(114) : error C2664: 'read' : cannot convert parameter 1 from 'unsigned char *' to 'char *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(126) : warning C4273: 'SetWithRadius' : inconsistent dll linkage. dllexport assumed. D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(147) : error C2039: 'rint' : is not a member of '`global namespace'' D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(147) : error C2065: 'rint' : undeclared identifier D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(172) : warning C4273: 'UnsetWithRadius' : inconsistent dll linkage. dllexport assumed. vtkBinaryVolumeLogic.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.h(44) : warning C4800: 'unsigned char' : forcing value to bool 'true' or 'false' (performance warning) D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory vtkLookupTableEquivalencyHash.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory vtkPatchedLookupTable.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory vtkWSBoundingBoxManager.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkBoundingBoxHash.h(21) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory vtkWSLookupTableManager.cxx D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory Generating Code... Error executing cl.exe. ALL_BUILD - 11 error(s), 9 warning(s) __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From galicjan@yahoo.com Mon Jul 29 19:28:03 2002 From: galicjan@yahoo.com (Jarek Sacha) Date: Mon, 29 Jul 2002 11:28:03 -0700 (PDT) Subject: [Insight-users] New ITK segmentation software In-Reply-To: Message-ID: <20020729182804.42809.qmail@web20908.mail.yahoo.com> --- Joshua Cates wrote: > Hi Jarek, > > Something in your CMake configuration seems to be causing an attempted > wrap for Python, which the code is not set up to do (nor does it need > to, > only Tcl wrapping is needed). I'll look through the CMake configuration > to see if I can find the cause (I may have to consult the CMake experts > on this one). In the meantime, you can try disabling Python wrapping in > your own setup, perhaps it is picking up this setting from your VTK > build. I disabled Python wrappings in my Linux VTK configuration, reconfigured ITK and completed build successfully. 'WSTITK Main.tcl' seems to be working (getting some depreciation warnings though). Most of my VTK code is in Python. I would be great if you could figure out how to compile with Python enabled. Thanks, Jarek __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From cates@sci.utah.edu Mon Jul 29 19:42:05 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Mon, 29 Jul 2002 12:42:05 -0600 (MDT) Subject: [Insight-users] New ITK segmentation software In-Reply-To: <20020729182804.42809.qmail@web20908.mail.yahoo.com> Message-ID: Hi Jarek, On Mon, 29 Jul 2002, Jarek Sacha wrote: > I disabled Python wrappings in my Linux VTK configuration, reconfigured > ITK and completed build successfully. 'WSTITK Main.tcl' seems to be > working (getting some depreciation warnings though). Out of curiosity, which version of VTK are you using? I may need to test out with a newer version than 4.0. > > Most of my VTK code is in Python. I would be great if you could figure out > how to compile with Python enabled. > I was able to duplicate this problem by turning on Python wrapping in my own build. I'll see what I can do to fix this. Thanks for the very valuable feedback, Josh. From cates@sci.utah.edu Tue Jul 30 01:33:21 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Mon, 29 Jul 2002 18:33:21 -0600 (MDT) Subject: [Insight-users] New ITK segmentation software - VC problems In-Reply-To: <20020729181801.95632.qmail@web20906.mail.yahoo.com> Message-ID: Hello, I've checked in several fixes which should take care of these errors on VC++. I'll try to track down a machine running windows so I can do more debugging if needed. Thanks, Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Mon, 29 Jul 2002, Jarek Sacha wrote: > --- Joshua Cates wrote: > > I have checked a new example application into the Insight repository > ... > > Let me know of any problems building or running this software. > > My VC++ 6.0 build fails on SegmentationEditor/Common/vtkBinaryEditor. > Errors and warnings are at the end of the message. > > Jarek > > ----------------------------- > > vtkBinaryVolume.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.h(44) : > warning C4800: 'unsigned char' : forcing value to bool 'true' or 'false' > (performance warning) > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(24) > : warning C4273: 'vtkBinaryVolume::vtkBinaryVolume' : inconsistent dll > linkage. dllexport assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(31) > : warning C4273: 'New' : inconsistent dll linkage. dllexport assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(43) > : warning C4273: 'Clear' : inconsistent dll linkage. dllexport assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(62) > : warning C4273: 'WriteToDisk' : inconsistent dll linkage. dllexport > assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(73) > : error C2664: 'write' : cannot convert parameter 1 from 'unsigned char *' > to 'const char *' > Types pointed to are unrelated; conversion requires > reinterpret_cast, C-style cast or function-style cast > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(74) > : error C2664: 'write' : cannot convert parameter 1 from 'unsigned char *' > to 'const char *' > Types pointed to are unrelated; conversion requires > reinterpret_cast, C-style cast or function-style cast > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(88) > : warning C4273: 'ReadFromDisk' : inconsistent dll linkage. dllexport > assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(108) > : error C2664: 'read' : cannot convert parameter 1 from 'unsigned char *' > to 'char *' > Types pointed to are unrelated; conversion requires > reinterpret_cast, C-style cast or function-style cast > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(114) > : error C2664: 'read' : cannot convert parameter 1 from 'unsigned char *' > to 'char *' > Types pointed to are unrelated; conversion requires > reinterpret_cast, C-style cast or function-style cast > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(126) > : warning C4273: 'SetWithRadius' : inconsistent dll linkage. dllexport > assumed. > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(147) > : error C2039: 'rint' : is not a member of '`global namespace'' > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(147) > : error C2065: 'rint' : undeclared identifier > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.cxx(172) > : warning C4273: 'UnsetWithRadius' : inconsistent dll linkage. dllexport > assumed. > vtkBinaryVolumeLogic.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBinaryVolume.h(44) : > warning C4800: 'unsigned char' : forcing value to bool 'true' or 'false' > (performance warning) > D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) > : fatal error C1083: Cannot open include file: 'hash_map': No such file or > directory > vtkLookupTableEquivalencyHash.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) > : fatal error C1083: Cannot open include file: 'hash_map': No such file or > directory > vtkPatchedLookupTable.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) > : fatal error C1083: Cannot open include file: 'hash_map': No such file or > directory > vtkWSBoundingBoxManager.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkBoundingBoxHash.h(21) > : fatal error C1083: Cannot open include file: 'hash_map': No such file or > directory > vtkWSLookupTableManager.cxx > D:\src\Insight\Examples\SegmentationEditor\Common\vtkLookupTableEquivalencyHash.h(20) > : fatal error C1083: Cannot open include file: 'hash_map': No such file or > directory > Generating Code... > Error executing cl.exe. > > ALL_BUILD - 11 error(s), 9 warning(s) > > __________________________________________________ > Do You Yahoo!? > Yahoo! Health - Feel better, live better > http://health.yahoo.com > From salah@gris.uni-tuebingen.de Tue Jul 30 09:34:23 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Tue, 30 Jul 2002 10:34:23 +0200 Subject: [Insight-users] SimpleFuzzyConnectednessScalarImageFilter Message-ID: <004501c237a3$e80d5520$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0042_01C237B4.AB7BE660 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello ITK users, I have build a segmentation program that uses the=20 SimpleFuzzyConnectednessScalarImageFilter It works for a long time and produces just a black volume image, i.e. = nothing at all can be seen. has anybody an idea where is the problem. I think the problem is that I = do not know how to=20 estimate the mean and variance of the object to be used with SetMean, = SetVariance?? Are there classes that estimate them?? The image I use was downloded = from ftp://public.kitware.com/pub/itk/Data/BrainWeb/BrainPart1.tgz Do anybody have an idea how to set these parameters????? Thanks in advance for any kind of help. Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0042_01C237B4.AB7BE660 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello ITK users,
 
I have build a segmentation = program that uses=20 the
SimpleFuzzyConnectednessScalarImageFilter
 
It works for a long time and produces = just a black=20 volume image, i.e. nothing at all can be seen.
has anybody an idea where is the problem. I think = the problem=20 is that I do not know how to=20
estimate the mean and variance of the = object to be=20 used with SetMean, SetVariance??
Are there classes that estimate them?? = The image I=20 use was downloded  from
ft= p://public.kitware.com/pub/itk/Data/BrainWeb/BrainPart1.tgz
Do anybody have an idea how to set these parameters?????
 
Thanks in advance for any kind of=20 help.
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0042_01C237B4.AB7BE660-- From galicjan@yahoo.com Tue Jul 30 14:10:05 2002 From: galicjan@yahoo.com (Jarek Sacha) Date: Tue, 30 Jul 2002 06:10:05 -0700 (PDT) Subject: [Insight-users] New ITK segmentation software - VC problems In-Reply-To: Message-ID: <20020730131005.196.qmail@web20908.mail.yahoo.com> --- Joshua Cates wrote: > Hello, > > I've checked in several fixes which should take care of these errors on > VC++. I'll try to track down a machine running windows so I can do more > debugging if needed. There are still number of errors while compiling with VC++. vtkWSTCommon have those for almost all the source files: 1) Cannot open include file 'hash_map' (is it a standard part of STL?) 2) 'rint' is not a part of the global name space 3) problems with casting arguments for ifstream.read() Also noticed that Python wrappings project gets generated under VC++ (vtkWSTCommonPython), so there is the same problem as under Linux. It is interesting that I do have Java, Python and Tcl wrapping enabled in VTK, but there is no Java bindings generated for SegmentationEditor. Hope this helps, Jarek __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From bahrahm@yahoo.com Tue Jul 30 14:37:17 2002 From: bahrahm@yahoo.com (Jisung Kim) Date: Tue, 30 Jul 2002 06:37:17 -0700 (PDT) Subject: [Insight-users] MRIBiasCorrector program In-Reply-To: <3D45C4FC.5040206@engineering.uiowa.edu> Message-ID: <20020730133717.60740.qmail@web10107.mail.yahoo.com> Hello. Yesterday, I finally fixed the problem and I also made some modifications that removes depreceated feature warnings. I will check in the modified code right now. MRIBiasCorrection example is more than a year old and there has been lots of changes in ITK. I tried to "mordernize" my example and filter codes. The "max-iteration" command line option is replaced with two separate options, "volume-max-iteration" and "inter-slice-max-iteration". The former is the maximal number of iterations for 3D bias correction and the latter for 2D zero degree inter slice bias correction that is a preprocess of 3D bias correction. I tested the example against Brainweb dataset. It seems works fine. If you have more problems, please let me know. Thank you, Jisung. --- "Hans J. Johnson" wrote: > Jisung, > > Any luck so far? I will have some time at the end > of this week to look > at this program again, and I was just wondering if > you were able to get > it to work. > > I realize that you probably have many other things > to do, so if I can be > of any assistance, please let me know. > > Thanks, > Hans > > Jisung Kim wrote: > > >Hello. > > > >I am the developer of the program. I just ran it > and > >had same seg fault error. The example is kind of > old > >and there wasn't any change since I implemented and > >tested it on Windows and Linux. > > > >At this moment, I don't know what caused it. I will > > >fix it and let you know. By the way, could you send > an > >email with information about your system such as > types > >and versions of OS and compiler? > > > >Thank you for pointing it out, > > > >Jisung. > > > >--- "Hans J. Johnson" > wrote: > > > >>Hello, > >> > >>I trying to use the MRIBiasCorrector program, and > I > >>am getting a > >>segmentation fault. > >> > >>I am using the most generic command line, with a > >>floating point input > >>image with Meta data header: > >>============== > >>NDims = 3 > >>DimSize = 256 256 124 > >>ElementType = MET_FLOAT > >>ElementSpacing = 0.703125 0.703125 1.500000 > >>ElementByteOrderMSB = False > >>ElementDataFile = /home/hjohnson/T1_float.img > >>=============== > >> > >>COMMANDLINE: > >> > >/usr/robin/people/hjohnson/src/buildhome/athlon/DEBUG/bin/BiasCorrector > > > >>--input /home/hjohnson/T1_float.mhd --output > xxx.img > >>--class-mean 1500 > >>570 --class-sigma 100 70 --use-log yes --degree 3 > >>--growth 1.05 > >>--shrink 0.9 > >> > >> > >>********The following warnings are produced within > a > >>few seconds of startup > >> > >>Loading images... > >>WARNING: In > >> > >/IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, > > > >>line 94 > >>ReadMetaImage (0x8134528): SetOutput(): This > method > >>is slated to be > >>removed from ITK. Please use GraftOutput() in > >>possible combination with > >>DisconnectPipeline() instead. > >> > >>Input image loaded. > >>Images loaded. > >>WARNING: In > >> > >/IPLlinux/robin_home/hjohnson/src/buildhome/athlon/DEBUG/include/Insight/Code/Common/itkImageSource.txx, > > > >>line 94 > >>MRIBiasFieldCorrectionFilter (0x81320f0): > >>SetOutput(): This method is > >>slated to be removed from ITK. Please use > >>GraftOutput() in possible > >>combination with DisconnectPipeline() instead. > >> > >>*******After about 2 minutes the program seg > faults > >>******* > >>====================Stack Trace ================= > >>chunk_free, FP=bfffd558 > >>__cfree, FP=bfffd578 > >>__builtin_delete, FP=bfffd598 > >>__builtin_vec_delete, FP=bfffd5b8 > >>vnl_c_vector_dealloc, FP=bfffd5d8 > >> [282]--> delete [] > >>static_cast(v); > >>vnl_c_vector::deallocate, FP=bfffd5f8 > >> [309]--> > >>vnl_c_vector_dealloc(v, n, sizeof (T)); > >>vnl_vector::destroy, FP=bfffd618 > >> [252]--> > >>vnl_vector_free_blah; > >>vnl_vector::~vnl_vector, FP=bfffd638 > >> [107]--> ~vnl_vector() { if > >>(data) destroy(); } > >>itk::Array::~Array, FP=bfffd658 > >> [71]--> ~Array() {}; > >>...gned int)3> >::EstimateBiasField, FP=bfffd6e8 > >> > >> > >[277]-->bias->SetCoefficients(m_Optimizer->GetCurrentPosition()); > > > >>...(unsigned int)3> >::GenerateData, FP=bfffe328 > >> > >>[447]-->this->EstimateBiasField(bias, *iter) ; > >>...:ProcessObject::UpdateOutputData, FP=bfffe488 > >> [814]-->this->GenerateData(); > > >> > >>itk::DataObject::UpdateOutputData, FP=bfffe4a8 > >> > >>[403]-->m_Source->UpdateOutputData(this); > >> itk::DataObject::Update, FP=bfffe4c8 > >> > >>[328]-->this->UpdateOutputData(); > >>itk::ProcessObject::Update, FP=bfffe4e8 > >> [482] void > >> [483] ProcessObject > >> [484] ::Update() > >> [485] { > >> [486] if > >>(this->GetOutput(0)) > >> [487] { > >> [488]--> > >>this->GetOutput(0)->Update(); > >> [489] } > >> [490] } > >>main, FP=bfffe818 > >> [212] > >>filter->SetBiasFieldDegree(degree) ; > >> [213] > >> > >filter->SetUsingSlabIdentification(usingSlabIdentification) > > > >>; > >> [214] > >>filter->SetSlicingDirection(sliceDirection) ; > >> [215]-->filter->Update() ; > >> __libc_start_main, FP=bfffe858 > >>============================================== > >> > >>Any suggestions or help would be greatly > >>appreciated. > >> > >>-- > >>Regards, > >>Hans > >> > >> > >============================================================================= > > > >> > >>Hans J. Johnson > > >> > >> 305 MEB > >>hans-johnson@uiowa.edu > > >> Dept. > >>of Psychiatry > >>http://moniz.psychiatry.uiowa.edu/~hjohnson > > >> The University > >>of Iowa > >>(319) 353-5593 > > >> > >> Iowa City, IA 52242 > >> > >============================================================================= > > > >> > >> > >> > === message truncated === ===== Jisung Kim bahrahm@yahoo.com 106 Mason Farm Rd. 129 Radiology Research Lab., CB# 7515 Univ. of North Carolina at Chapel Hill Chapel Hill, NC 27599-7515 __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From renaud.winzenrieth@utc.fr Tue Jul 30 15:51:52 2002 From: renaud.winzenrieth@utc.fr (Renaud Winzenrieth) Date: Tue, 30 Jul 2002 16:51:52 +0200 Subject: [Insight-users] Canny filter problems Message-ID: <3D46A808.9030304@utc.fr> Hi everybody, I have some problems with the canny filter. I do this: vtkBMPreader->vtkImageLuminance->vtkImageCast->vtkImageExport ->itkImageImportType->itkCannyEdgeDetectionImageFilter->itkVTKImageExport ->itkImageExportType->vtkImageImport->vtkImageCast->vtkImageMapper ->vtkActor2D->vtkRenderer->......->Render() My problem is that i obtaine a black window. If I skip the canny filter step everything is ok. anybody can help me? From cates@sci.utah.edu Tue Jul 30 17:41:46 2002 From: cates@sci.utah.edu (Joshua Cates) Date: Tue, 30 Jul 2002 10:41:46 -0600 (MDT) Subject: [Insight-users] Canny filter problems In-Reply-To: <3D46A808.9030304@utc.fr> Message-ID: Hi, Try casting your image to float before the edge detector (and back to int or char or whatever type you need after). This is a common problem with some of the basic image processing filters: they expect real number input and don't automatically convert from non floating point types. It will be fixed in the future, but for now you will need to explicitly cast. Hope this helps. Josh. ______________________________ Josh Cates School of Computer Science University of Utah Email: cates@sci.utah.edu Phone: (801) 587-7697 URL: www.cs.utk.edu/~cates On Tue, 30 Jul 2002, Renaud Winzenrieth wrote: > Hi everybody, > I have some problems with the canny filter. > I do this: > vtkBMPreader->vtkImageLuminance->vtkImageCast->vtkImageExport > ->itkImageImportType->itkCannyEdgeDetectionImageFilter->itkVTKImageExport > ->itkImageExportType->vtkImageImport->vtkImageCast->vtkImageMapper > ->vtkActor2D->vtkRenderer->......->Render() > My problem is that i obtaine a black window. If I skip the canny filter > step everything is ok. > anybody can help me? > > _______________________________________________ > Insight-users mailing list > Insight-users@public.kitware.com > http://public.kitware.com/mailman/listinfo/insight-users > From bhs@pvv.org Tue Jul 30 22:43:07 2002 From: bhs@pvv.org (Bjorn Hanch Sollie) Date: Tue, 30 Jul 2002 23:43:07 +0200 (CEST) Subject: [Insight-users] Finding the median of the neighborhood of a pixel Message-ID: Hi all! Does ITK contain any functionality for finding the median of the standard 9, 27, etc. neighborhood of a pixel? I've been looking at MedianImageFunction, but couldn't figure out how to use it for this purpose. Also the SmartNeighborhoodIterator uses similar neighborhoods, but it doesn't have a method for calculating the median as far as I can see. Not that it's so hard to implement this myself, but I just thought I'd check if what I'm looking for is already in there somewhere first. -Beorn -- The History of the Universe Chapter 1: Bang! Chapter 2: Sss... Chapter 3: Crunch! The End From salah@gris.uni-tuebingen.de Wed Jul 31 12:37:35 2002 From: salah@gris.uni-tuebingen.de (Zein Salah) Date: Wed, 31 Jul 2002 13:37:35 +0200 Subject: [Insight-users] how can I display a 2D color .png image using fltk Message-ID: <008b01c23886$aaaca710$aeb00286@wsigris.unituebingen.de> This is a multi-part message in MIME format. ------=_NextPart_000_0088_01C23897.6E299030 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable hello all, how can I display a 2D color .png image using fltk? what is the suitable = viewer to use? how can it be templated? Thanks in advance. Zein ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0088_01C23897.6E299030 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
hello all,
 
how can I display a 2D color .png image = using fltk?=20 what is the suitable viewer to use? how can it be = templated?
Thanks in advance.
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat) =
------=_NextPart_000_0088_01C23897.6E299030-- From srodrigu@gbt.tfo.upm.es Wed Jul 31 14:21:45 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Wed, 31 Jul 2002 15:21:45 +0200 Subject: Fw: [Insight-users] how can I display a 2D color .png image using fltk Message-ID: <002801c23895$37ed3410$5f0a048a@sisifo> This is a multi-part message in MIME format. ------=_NextPart_000_0025_01C238A5.FB577F90 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable ----- Original Message -----=20 From: Samuel Rodr=EDguez Bescos=20 To: Zein Salah=20 Sent: Wednesday, July 31, 2002 3:18 PM Subject: Re: [Insight-users] how can I display a 2D color .png image = using fltk You can use the class fltk::Image2DViewer Samuel ----- Original Message -----=20 From: Zein Salah=20 To: ITK Users=20 Sent: Wednesday, July 31, 2002 1:37 PM Subject: [Insight-users] how can I display a 2D color .png image using = fltk hello all, how can I display a 2D color .png image using fltk? what is the = suitable viewer to use? how can it be templated? Thanks in advance. Zein = ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0025_01C238A5.FB577F90 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 
----- Original Message -----=20
From: Samuel=20 Rodr=EDguez Bescos
Sent: Wednesday, July 31, 2002 3:18 PM
Subject: Re: [Insight-users] how can I display a 2D color = .png image=20 using fltk

You can use the class=20 fltk::Image2DViewer<unsigned short>
 
Samuel
 
----- Original Message -----
From:=20 Zein Salah
To: ITK Users
Sent: Wednesday, July 31, 2002 = 1:37=20 PM
Subject: [Insight-users] how = can I=20 display a 2D color .png image using fltk

hello all,
 
how can I display a 2D color .png = image using=20 fltk? what is the suitable viewer to use? how can it be=20 templated?
Thanks in advance.
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14
72076 = T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20
------=_NextPart_000_0025_01C238A5.FB577F90-- From srodrigu@gbt.tfo.upm.es Wed Jul 31 15:27:35 2002 From: srodrigu@gbt.tfo.upm.es (=?iso-8859-1?Q?Samuel_Rodr=EDguez_Bescos?=) Date: Wed, 31 Jul 2002 16:27:35 +0200 Subject: [Insight-users] how can I display a 2D color .png image using fltk References: <008b01c23886$aaaca710$aeb00286@wsigris.unituebingen.de> <000a01c23894$b7e0e640$5f0a048a@sisifo> <000b01c2389a$c181bf20$aeb00286@wsigris.unituebingen.de> Message-ID: <005701c2389e$6a0d9b20$5f0a048a@sisifo> This is a multi-part message in MIME format. ------=_NextPart_000_0054_01C238AF.2D6D3840 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I think this class is only for one band images. I think that in your = case the viewer take the first band. I don't know which class can you = use for color images. So sorry. Samuel=20 ----- Original Message -----=20 From: Zein Salah=20 To: Samuel Rodr=EDguez Bescos=20 Sent: Wednesday, July 31, 2002 4:01 PM Subject: Re: [Insight-users] how can I display a 2D color .png image = using fltk Hi Samuel, Thanks for the reply!! I have tried. The output is a gray-scale image, eventhough the input = image is a color .png image!!!=20 what could the problem be?? thanks again, Zein ----- Original Message -----=20 From: Samuel Rodr=EDguez Bescos=20 To: Zein Salah=20 Sent: Wednesday, July 31, 2002 3:18 PM Subject: Re: [Insight-users] how can I display a 2D color .png image = using fltk You can use the class fltk::Image2DViewer Samuel ----- Original Message -----=20 From: Zein Salah=20 To: ITK Users=20 Sent: Wednesday, July 31, 2002 1:37 PM Subject: [Insight-users] how can I display a 2D color .png image = using fltk hello all, how can I display a 2D color .png image using fltk? what is the = suitable viewer to use? how can it be templated? Thanks in advance. Zein = ->8<------------->8<------------->8<------------->8<------------->8<-----= -------->8<- Zein I. Salah=20 Universit=E4t T=FCbingen, WSI-GRIS=20 Sand 14=20 72076 T=FCbingen=20 Email: salah@gris.uni-tuebingen.de / zeinsalah@hotmail.com Tel.: (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20 ------=_NextPart_000_0054_01C238AF.2D6D3840 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

I think this class is only for one band  images. I think = that in=20 your case the viewer take the first band. I don't know which class can = you use=20 for color images.

So sorry.

Samuel 

----- Original Message -----
From:=20 Zein Salah
Sent: Wednesday, July 31, 2002 = 4:01=20 PM
Subject: Re: [Insight-users] = how can I=20 display a 2D color .png image using fltk

Hi Samuel,
 
Thanks for the reply!!
 
I have tried. The output is a = gray-scale image,=20 eventhough the input image is a color .png image!!!
what could the problem = be??
 
thanks again,
Zein
 
----- Original Message -----
From:=20 Samuel Rodr=EDguez = Bescos
To: Zein Salah
Sent: Wednesday, July 31, = 2002 3:18=20 PM
Subject: Re: [Insight-users] = how can I=20 display a 2D color .png image using fltk

You can use the class=20 fltk::Image2DViewer<unsigned short>
 
Samuel
 
----- Original Message ----- =
From:=20 Zein Salah
To: ITK Users =
Sent: Wednesday, July 31, = 2002 1:37=20 PM
Subject: [Insight-users] = how can I=20 display a 2D color .png image using fltk

hello all,
 
how can I display a 2D color .png = image using=20 fltk? what is the suitable viewer to use? how can it be=20 templated?
Thanks in advance.
 
Zein
 
 
->8<------------->8<------------->8<----------= --->8<------------->8<------------->8<-
Zein=20 I. Salah
Universit=E4t T=FCbingen, WSI-GRIS
Sand 14 =
72076 T=FCbingen=20
Email: salah@gris.uni-tuebingen.de =20 / zeinsalah@hotmail.com
Tel.: = (07071) 29 75465 (GRIS) , (07071) 96 44 39 (privat)=20
------=_NextPart_000_0054_01C238AF.2D6D3840-- From galicjan@yahoo.com Wed Jul 31 16:02:29 2002 From: galicjan@yahoo.com (Jarek Sacha) Date: Wed, 31 Jul 2002 08:02:29 -0700 (PDT) Subject: [Insight-users] New ITK segmentation software In-Reply-To: Message-ID: <20020731150229.23000.qmail@web20907.mail.yahoo.com> Latest CVS updates work fine on my Linux box (including when the Python wrappings are enabled in VTK). I was able to compile the SegmentationEditor; went through all the modules (data, preprocessor, segmenter, editor) with a sample data. Looks great. Thanks Josh, Jarek __________________________________________________ Do You Yahoo!? Yahoo! Health - Feel better, live better http://health.yahoo.com From anast.jm@pg.com Wed Jul 31 19:19:35 2002 From: anast.jm@pg.com (anast.jm@pg.com) Date: Wed, 31 Jul 2002 14:19:35 -0400 Subject: [Insight-users] Search the archive?? Message-ID: Does this list have a searchable archive like the vtk users list??? I didn't see a link on the itk home page....john