From elli.pfaehler at gmail.com Tue May 1 01:57:59 2018 From: elli.pfaehler at gmail.com (Elisabeth Pfaehler) Date: Tue, 01 May 2018 05:57:59 +0000 Subject: [ITK-users] Problem using CMAKE including ITK, VTK and GDCM In-Reply-To: References: <1525025589459-0.post@n7.nabble.com> Message-ID: Thanks a lot! I included OPTION(ITK_USE_SYSTEM_GDCM "Use an outside build of GDCM." ON) MARK_AS_ADVANCED(ITK_USE_SYSTEM_GDCM) if(ITK_USE_SYSTEM_GDCM) find_package(GDCM REQUIRED) endif() in the CMakeLists.txt of iTK and now its working! :) Am Mo., 30. Apr. 2018 um 15:59 Uhr schrieb D?enan Zuki? : > Hi Elli, > > what you need to do is set ITK_USE_SYSTEM_GDCM to ON when configuring ITK > and point to the GDCM you compiled yourself. > > Regards, > D?enan > > On Sun, Apr 29, 2018 at 2:13 PM Elli wrote: > >> Dear all, >> >> I am having some trouble with CMAKE. Until now, I used in my project ITK >> and >> VTK what worked quite fine. However, now I want to use >> vtkGDCMPolyDataReader, so I also downloaded and built the GDCM library. >> With >> the build and the installation everything worked fine. >> >> Now I want to include GDCM in my project. I have a CMakeLists file (I have >> to admit that my experience with cmake is very limited). It looks the >> following: >> >> cmake_minimum_required(VERSION 2.8) >> >> project(Radiomics) >> >> SET (BOOST_ROOT "C:/boost_1_65_0/boost_1_65_0") >> SET (BOOST_LIBRARYDIR "C:/boost_1_65_0/boost_1_65_0/stage/lib") >> >> SET (BOOST_MIN_VERSION "1.55.0") >> set (Boost_NO_BOOST_CMAKE ON) >> SET(USE_STATIC_LIBS = 1) >> FIND_PACKAGE(Boost ${BOOST_MIN_VERSION} REQUIRED) >> if (NOT Boost_FOUND) >> message(FATAL_ERROR "Fatal error: Boost (version >= 1.55) required.") >> else() >> message(STATUS "Setting up BOOST") >> message(STATUS " Library - ${Boost_LIBRARY_DIRS}") >> include_directories(${Boost_INCLUDE_DIRS}) >> link_directories(${Boost_LIBRARY_DIRS}) >> endif (NOT Boost_FOUND) >> >> find_package(ITK REQUIRED) >> include(${ITK_USE_FILE}) >> >> find_package(VTK REQUIRED) >> include(${VTK_USE_FILE}) >> >> FIND_PACKAGE(GDCM REQUIRED) >> IF(GDCM_FOUND) >> INCLUDE(${GDCM_USE_FILE}) >> >> ELSE(GDCM_FOUND) >> MESSAGE(FATAL_ERROR "Cannot find GDCM, did you set GDCM_DIR?") >> ENDIF(GDCM_FOUND) >> >> >> add_executable(Radiomics MACOSX_BUNDLE src/main.cpp) >> target_link_libraries(Radiomics >> ${Boost_LIBRARIES} ${Glue} ${vtkgdcm} ${VTK_LIBRARIES} ${ITK_LIBRARIES}) >> >> But now I get the error: >> >> Some (but not all) targets in this export set were already defined. >> >> Targets Defined: >> >> gdcmCommon;gdcmDICT;gdcmDSED;gdcmIOD;gdcmMSFF;gdcmMEXD;gdcmjpeg8;gdcmjpeg12;gdcmjpeg16;gdcmcharls >> >> >> Targets not yet defined: gdcmexpat;gdcmopenjp2;gdcmzlib;socketxx;vtkgdcm >> >> I already found other persons reporting the bug but I could not find any >> solution. >> >> Can anyone help me with this? >> >> Thanks in advance! >> >> Elli >> >> >> >> -- >> Sent from: http://itk-users.7.n7.nabble.com/ >> The ITK community is transitioning from this mailing list to >> discourse.itk.org. Please join us there! >> ________________________________ >> Powered by www.kitware.com >> >> Visit other Kitware open-source projects at >> http://www.kitware.com/opensource/opensource.html >> >> Kitware offers ITK Training Courses, for more information visit: >> http://www.kitware.com/products/protraining.php >> >> Please keep messages on-topic and check the ITK FAQ at: >> http://www.itk.org/Wiki/ITK_FAQ >> >> Follow this link to subscribe/unsubscribe: >> https://itk.org/mailman/listinfo/insight-users >> > -- Elisabeth Pfaehler Oude Ebbingestraat 73a 9712HE Groningen -------------- next part -------------- An HTML attachment was scrubbed... URL: From elli.pfaehler at gmail.com Sat May 5 02:09:11 2018 From: elli.pfaehler at gmail.com (Elisabeth Pfaehler) Date: Sat, 05 May 2018 06:09:11 +0000 Subject: [ITK-users] Problem calculating surface ITK mesh Message-ID: Dear all, I am facing a problem calculating the surface of an ITK mesh. Originally I have an image mask and converted this mask to a triangle mesh. In order to calculate the surface, I wanted to convert this mesh to a simplex mesh using: typedef itk::SimplexMesh< float, 3 > TSimplex; typedef itk::TriangleMeshToSimplexMeshFilter< MeshType, TSimplex > TConvert; // Convert the triangle mesh to a simplex mesh. TConvert::Pointer convert = TConvert::New(); convert->SetInput(meshSource->GetOutput()); convert->Update(); As I found it in one example. But in this case my software starts calculating and never stops. So, now I tried to calculate the surface of every cell and add these surfaces. But is there maybe another, nicer way? Thanks a lot in advance Elli -------------- next part -------------- An HTML attachment was scrubbed... URL: From sorench at gmail.com Sat May 5 18:07:25 2018 From: sorench at gmail.com (Soren Christensen) Date: Sat, 5 May 2018 15:07:25 -0700 Subject: [ITK-users] strange filter behavior in Progressevent callback in itkwrap Message-ID: Hi, I am trying to monitor the progress of a levelset filter using a Progressevent callback. I am thresholding the level set output with a thresholding filter and this works as expected in terms of the end results. However, I am trying to monitor the progress of a levelset filter using a Progressevent callback and it is not working inside the progressevent callback. Here's the code: .... Set up level and threshold filter ... #define call back function def myCommand(): global k if k % 10==0: thresholder.Update() print(levelsetfilter.GetMTime()) #print mtime for levelset filter and then thresholdfilter print(thresholder.GetMTime()) print("----") save_rgb(levelsetfilter.GetOutput(),'mont' + str(k)+ '.png') k=k+1 k=0 levelsetfilter.AddObserver(itk.ProgressEvent(), myCommand ) levelsetfilter.Update() The output from the print statements are: 18702 *18145* ---- 18738 *18145* ---- 18765 *18145* ---- 18792 *18145* ---- 18819 *18145* ... ... ... So the mtime for the threshold filter never gets modified when inside the call back. What is the reason for this? Is there something particular about the execution pipeline when inside a callback like this? Thanks! Soren -------------- next part -------------- An HTML attachment was scrubbed... URL: From dzenanz at gmail.com Sun May 6 11:49:05 2018 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Sun, 06 May 2018 15:49:05 +0000 Subject: [ITK-users] Problem calculating surface ITK mesh In-Reply-To: References: Message-ID: Hi Elisabeth, you could try using BinaryImageToStatisticsLabelMapFilter or some other filter from the same group . The feature you want to pay attention to is 'perimeter'. Regards, D?enan On Sat, May 5, 2018 at 2:09 AM Elisabeth Pfaehler wrote: > Dear all, > > I am facing a problem calculating the surface of an ITK mesh. > Originally I have an image mask and converted this mask to a triangle > mesh. In order to calculate the surface, I wanted to convert this mesh to a > simplex mesh using: > > typedef itk::SimplexMesh< float, 3 > TSimplex; > typedef itk::TriangleMeshToSimplexMeshFilter< MeshType, TSimplex > > TConvert; > > // Convert the triangle mesh to a simplex mesh. > TConvert::Pointer convert = TConvert::New(); > convert->SetInput(meshSource->GetOutput()); > convert->Update(); > > As I found it in one example. But in this case my software starts > calculating and never stops. > > So, now I tried to calculate the surface of every cell and add these > surfaces. But is there maybe another, nicer way? > > Thanks a lot in advance > > Elli > > The ITK community is transitioning from this mailing list to > discourse.itk.org. Please join us there! > ________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://www.kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > https://itk.org/mailman/listinfo/insight-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dzenanz at gmail.com Sun May 6 11:52:26 2018 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Sun, 06 May 2018 15:52:26 +0000 Subject: [ITK-users] strange filter behavior in Progressevent callback in itkwrap In-Reply-To: References: Message-ID: Hi Soren, progress events do no modify the filter, hence the MTime does not change. MTime changes when filter's parameters are changed - and only the ones which require re-computation of the output. Regards, D?enan On Sat, May 5, 2018 at 6:08 PM Soren Christensen wrote: > Hi, > I am trying to monitor the progress of a levelset filter using > a Progressevent callback. > I am thresholding the level set output with a thresholding filter and this > works as expected in terms of the end results. > However, I am trying to monitor the progress of a levelset filter using > a Progressevent callback and it is not working inside the progressevent > callback. > > Here's the code: > .... > Set up level and threshold filter > ... > #define call back function > > def myCommand(): > > global k > > if k % 10==0: > > thresholder.Update() > > print(levelsetfilter.GetMTime()) #print mtime for levelset filter and then > thresholdfilter > > print(thresholder.GetMTime()) > > print("----") > > save_rgb(levelsetfilter.GetOutput(),'mont' + str(k)+ '.png') > > k=k+1 > > > k=0 > > levelsetfilter.AddObserver(itk.ProgressEvent(), myCommand ) > > levelsetfilter.Update() > > > > The output from the print statements are: > > 18702 *18145* ---- 18738 *18145* ---- 18765 *18145* ---- 18792 *18145* > ---- 18819 *18145* ... > > ... > > ... > > > So the mtime for the threshold filter never gets modified when inside the > call back. > > > What is the reason for this? Is there something particular about the > execution pipeline when inside a callback like this? > > > Thanks! > > Soren > > > > The ITK community is transitioning from this mailing list to > discourse.itk.org. Please join us there! > ________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://www.kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > https://itk.org/mailman/listinfo/insight-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From sorench at gmail.com Sun May 6 22:45:08 2018 From: sorench at gmail.com (Soren Christensen) Date: Mon, 07 May 2018 02:45:08 +0000 Subject: [ITK-users] strange filter behavior in Progressevent callback in itkwrap In-Reply-To: References: Message-ID: Hi Dzenan, Thanks! It does seem that the level sets filter mtime is changing though (top number)? I managed to get it working by initializing the threshold filter inside the progress callback. The output now changes with each callback. Thanks! Soren On Sun, May 6, 2018, 08:52 D?enan Zuki? wrote: > Hi Soren, > > progress events do no modify the filter, hence the MTime does not change. > MTime changes when filter's parameters are changed - and only the ones > which require re-computation of the output. > > Regards, > D?enan > > On Sat, May 5, 2018 at 6:08 PM Soren Christensen > wrote: > >> Hi, >> I am trying to monitor the progress of a levelset filter using >> a Progressevent callback. >> I am thresholding the level set output with a thresholding filter and >> this works as expected in terms of the end results. >> However, I am trying to monitor the progress of a levelset filter using >> a Progressevent callback and it is not working inside the progressevent >> callback. >> >> Here's the code: >> .... >> Set up level and threshold filter >> ... >> #define call back function >> >> def myCommand(): >> >> global k >> >> if k % 10==0: >> >> thresholder.Update() >> >> print(levelsetfilter.GetMTime()) #print mtime for levelset filter and >> then thresholdfilter >> >> print(thresholder.GetMTime()) >> >> print("----") >> >> save_rgb(levelsetfilter.GetOutput(),'mont' + str(k)+ '.png') >> >> k=k+1 >> >> >> k=0 >> >> levelsetfilter.AddObserver(itk.ProgressEvent(), myCommand ) >> >> levelsetfilter.Update() >> >> >> >> The output from the print statements are: >> >> 18702 *18145* ---- 18738 *18145* ---- 18765 *18145* ---- 18792 *18145* >> ---- 18819 *18145* ... >> >> ... >> >> ... >> >> >> So the mtime for the threshold filter never gets modified when inside the >> call back. >> >> >> What is the reason for this? Is there something particular about the >> execution pipeline when inside a callback like this? >> >> >> Thanks! >> >> Soren >> >> >> >> The ITK community is transitioning from this mailing list to >> discourse.itk.org. Please join us there! >> ________________________________ >> Powered by www.kitware.com >> >> Visit other Kitware open-source projects at >> http://www.kitware.com/opensource/opensource.html >> >> Kitware offers ITK Training Courses, for more information visit: >> http://www.kitware.com/products/protraining.php >> >> Please keep messages on-topic and check the ITK FAQ at: >> http://www.itk.org/Wiki/ITK_FAQ >> >> Follow this link to subscribe/unsubscribe: >> https://itk.org/mailman/listinfo/insight-users >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chyumm at yahoo.com Wed May 23 02:55:33 2018 From: chyumm at yahoo.com (Jay Li) Date: Wed, 23 May 2018 00:55:33 -0600 Subject: [ITK-users] (no subject) Message-ID: <1527058546.LNgYfy1deSNiFLNgYfgvRZ@mf-smf-ucb033c2> http://moment.craft-concepts.com Jay Li -------------- next part -------------- An HTML attachment was scrubbed... URL: From Robert.Atwood at diamond.ac.uk Thu May 24 11:53:42 2018 From: Robert.Atwood at diamond.ac.uk (Robert.Atwood at diamond.ac.uk) Date: Thu, 24 May 2018 15:53:42 +0000 Subject: [ITK-users] simpleitk Python ExtractImageFilter -- basic usage Message-ID: <0ecfdf0cb1bb4eb08c75383a8f404f5a@diamond.ac.uk> I'm sorry if I'm abit thick, but this doesn't work. I tried to read documents and old mailing list entries, but I don't find an answer, just in the past someone with a similar problem wound up using CropImageFilter instead. Can someone clarify why this doesn't work? I'd specifically LIKE to maintain the origin of the region as the origin of the original image. 1 import SimpleITK as sitk 2 3 4 rawimg = sitk.Image(50,60,70,sitk.sitkFloat32) 5 newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) Traceback (most recent call last): File "./tryextract.py", line 12, in newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27140, in Extract return _SimpleITK.Extract(*args, **kwargs) RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7f7eb17d8e80): Extraction Region not consistent with output image [kny48981 at i12-ws011 pycircles]$ python ./tryextract.py /dls/i12/data/2018/cm19662-3/tmp/bubble/onebub.tif -o /scratch/SSD/robert/onebub Traceback (most recent call last): File "./tryextract.py", line 5, in newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27140, in Extract return _SimpleITK.Extract(*args, **kwargs) RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7f8287a9e020): Extraction Region not consistent with output image But the output image should be getting created (returned) by the filter?So how can it not be consistent??? Or what's going on? Especially since it worked fine in a previous program with 2d data. I tried a bit harder and used the object interface, and compare 2d and 3d, and try to set the collapse strategy.. And it works in 2d but not in 3d, I really can't see why. 1 import SimpleITK as sitk 2 3 rawimg2d = sitk.Image(50,60,sitk.sitkFloat32) 4 print rawimg2d.GetDimension() 5 extractor2d=sitk.ExtractImageFilter() 6 extractor2d.SetSize((20,30)) 7 extractor2d.SetIndex((5,6)) 8 extractor2d.SetDirectionCollapseToStrategy(extractor2d.DIRECTIONCOLLAPSETOIDENTITY) 9 print "strategy, ",extractor2d.GetDirectionCollapseToStrategy() 10 newimg2d=extractor2d.Execute(rawimg2d) 11 12 print "Finished 2d extractor" 13 14 rawimg3d = sitk.Image(50,60,70,sitk.sitkFloat32) 15 print rawimg3d.GetDimension() 16 extractor3d=sitk.ExtractImageFilter() 17 extractor3d.SetSize((20,30,40)) 18 extractor3d.SetIndex((5,6,7)) 19 extractor3d.SetDirectionCollapseToStrategy(extractor3d.DIRECTIONCOLLAPSETOIDENTITY) 20 print "strategy, ",extractor3d.GetDirectionCollapseToStrategy() 21 newimg3d=extractor3d.Execute(rawimg3d) 22 print "Finished 3d extractor" 23 python ./tryextract.py / 2 strategy, 1 Finished 2d extractor 3 strategy, 1 Traceback (most recent call last): File "./tryextract.py", line 21, in newimg3d=extractor3d.Execute(rawimg3d) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27115, in Execute return _SimpleITK.ExtractImageFilter_Execute(self, *args) RuntimeError: Exception thrown in SimpleITK ExtractImageFilter_Execute: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7fbf77727bc0): Extraction Region not consistent with output image -- This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail. Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd. Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message. Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom From blowekamp at mail.nih.gov Thu May 24 13:54:09 2018 From: blowekamp at mail.nih.gov (Lowekamp, Bradley (NIH/NLM/LHC) [C]) Date: Thu, 24 May 2018 17:54:09 +0000 Subject: [ITK-users] [ITK] simpleitk Python ExtractImageFilter -- basic usage Message-ID: Can you please post you question to discourse? https://discourse.itk.org ?On 5/24/18, 12:12 PM, "Robert.Atwood at diamond.ac.uk" wrote: I'm sorry if I'm abit thick, but this doesn't work. I tried to read documents and old mailing list entries, but I don't find an answer, just in the past someone with a similar problem wound up using CropImageFilter instead. Can someone clarify why this doesn't work? I'd specifically LIKE to maintain the origin of the region as the origin of the original image. 1 import SimpleITK as sitk 2 3 4 rawimg = sitk.Image(50,60,70,sitk.sitkFloat32) 5 newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) Traceback (most recent call last): File "./tryextract.py", line 12, in newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27140, in Extract return _SimpleITK.Extract(*args, **kwargs) RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7f7eb17d8e80): Extraction Region not consistent with output image [kny48981 at i12-ws011 pycircles]$ python ./tryextract.py /dls/i12/data/2018/cm19662-3/tmp/bubble/onebub.tif -o /scratch/SSD/robert/onebub Traceback (most recent call last): File "./tryextract.py", line 5, in newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27140, in Extract return _SimpleITK.Extract(*args, **kwargs) RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7f8287a9e020): Extraction Region not consistent with output image But the output image should be getting created (returned) by the filter?So how can it not be consistent??? Or what's going on? Especially since it worked fine in a previous program with 2d data. I tried a bit harder and used the object interface, and compare 2d and 3d, and try to set the collapse strategy.. And it works in 2d but not in 3d, I really can't see why. 1 import SimpleITK as sitk 2 3 rawimg2d = sitk.Image(50,60,sitk.sitkFloat32) 4 print rawimg2d.GetDimension() 5 extractor2d=sitk.ExtractImageFilter() 6 extractor2d.SetSize((20,30)) 7 extractor2d.SetIndex((5,6)) 8 extractor2d.SetDirectionCollapseToStrategy(extractor2d.DIRECTIONCOLLAPSETOIDENTITY) 9 print "strategy, ",extractor2d.GetDirectionCollapseToStrategy() 10 newimg2d=extractor2d.Execute(rawimg2d) 11 12 print "Finished 2d extractor" 13 14 rawimg3d = sitk.Image(50,60,70,sitk.sitkFloat32) 15 print rawimg3d.GetDimension() 16 extractor3d=sitk.ExtractImageFilter() 17 extractor3d.SetSize((20,30,40)) 18 extractor3d.SetIndex((5,6,7)) 19 extractor3d.SetDirectionCollapseToStrategy(extractor3d.DIRECTIONCOLLAPSETOIDENTITY) 20 print "strategy, ",extractor3d.GetDirectionCollapseToStrategy() 21 newimg3d=extractor3d.Execute(rawimg3d) 22 print "Finished 3d extractor" 23 python ./tryextract.py / 2 strategy, 1 Finished 2d extractor 3 strategy, 1 Traceback (most recent call last): File "./tryextract.py", line 21, in newimg3d=extractor3d.Execute(rawimg3d) File "/home/kny48981/.local/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 27115, in Execute return _SimpleITK.ExtractImageFilter_Execute(self, *args) RuntimeError: Exception thrown in SimpleITK ExtractImageFilter_Execute: /tmp/SimpleITK-build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: itk::ERROR: ExtractImageFilter(0x7fbf77727bc0): Extraction Region not consistent with output image -- This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail. Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd. Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message. Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom The ITK community is transitioning from this mailing list to discourse.itk.org. Please join us there! ________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://www.kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: https://itk.org/mailman/listinfo/insight-users The ITK community is transitioning from this mailing list to discourse.itk.org. Please join us there! ________________________________________ Community mailing list Community at itk.org https://itk.org/mailman/listinfo/community From Robert.Atwood at diamond.ac.uk Fri May 25 05:13:52 2018 From: Robert.Atwood at diamond.ac.uk (Robert.Atwood at diamond.ac.uk) Date: Fri, 25 May 2018 09:13:52 +0000 Subject: [ITK-users] [ITK] simpleitk Python ExtractImageFilter -- basic usage In-Reply-To: References: Message-ID: <212dc35018d74cd2aa08965036588ece@diamond.ac.uk> Done! > -----Original Message----- > From: Lowekamp, Bradley (NIH/NLM/LHC) [C] > [mailto:blowekamp at mail.nih.gov] > Sent: 24 May 2018 18:54 > To: Atwood, Robert (DLSLtd,RAL,SCI); insight-users at itk.org > Subject: Re: [ITK] [ITK-users] simpleitk Python ExtractImageFilter -- basic > usage > > Can you please post you question to discourse? > > https://discourse.itk.org > > ?On 5/24/18, 12:12 PM, "Robert.Atwood at diamond.ac.uk" > wrote: > > I'm sorry if I'm abit thick, but this doesn't work. > I tried to read documents and old mailing list entries, but I don't find an > answer, just in the past someone with a similar problem wound up using > CropImageFilter instead. > > > Can someone clarify why this doesn't work? I'd specifically LIKE to maintain > the origin of the region as the origin of the original image. > > > 1 import SimpleITK as sitk > 2 > 3 > 4 rawimg = sitk.Image(50,60,70,sitk.sitkFloat32) > 5 newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) > > > > Traceback (most recent call last): > File "./tryextract.py", line 12, in > newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) > File "/home/kny48981/.local/lib/python2.7/site- > packages/SimpleITK/SimpleITK.py", line 27140, in Extract > return _SimpleITK.Extract(*args, **kwargs) > RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK- > build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: > itk::ERROR: ExtractImageFilter(0x7f7eb17d8e80): Extraction Region not > consistent with output image > [kny48981 at i12-ws011 pycircles]$ python ./tryextract.py > /dls/i12/data/2018/cm19662-3/tmp/bubble/onebub.tif -o > /scratch/SSD/robert/onebub > Traceback (most recent call last): > File "./tryextract.py", line 5, in > newim=sitk.Extract(rawimg,(20,30,40),(0,0,0)) > File "/home/kny48981/.local/lib/python2.7/site- > packages/SimpleITK/SimpleITK.py", line 27140, in Extract > return _SimpleITK.Extract(*args, **kwargs) > RuntimeError: Exception thrown in SimpleITK Extract: /tmp/SimpleITK- > build/ITK-prefix/include/ITK-4.13/itkExtractImageFilter.hxx:99: > itk::ERROR: ExtractImageFilter(0x7f8287a9e020): Extraction Region not > consistent with output image > > > But the output image should be getting created (returned) by the filter?So > how can it not be consistent??? > Or what's going on? > Especially since it worked fine in a previous program with 2d data. > > > > I tried a bit harder and used the object interface, and compare 2d and 3d, > and try to set the collapse strategy.. > > And it works in 2d but not in 3d, I really can't see why. > > 1 import SimpleITK as sitk > 2 > 3 rawimg2d = sitk.Image(50,60,sitk.sitkFloat32) > 4 print rawimg2d.GetDimension() > 5 extractor2d=sitk.ExtractImageFilter() > 6 extractor2d.SetSize((20,30)) > 7 extractor2d.SetIndex((5,6)) > 8 > extractor2d.SetDirectionCollapseToStrategy(extractor2d.DIRECTIONCOLLAPS > ETOIDENTITY) > 9 print "strategy, ",extractor2d.GetDirectionCollapseToStrategy() > 10 newimg2d=extractor2d.Execute(rawimg2d) > 11 > 12 print "Finished 2d extractor" > 13 > 14 rawimg3d = sitk.Image(50,60,70,sitk.sitkFloat32) > 15 print rawimg3d.GetDimension() > 16 extractor3d=sitk.ExtractImageFilter() > 17 extractor3d.SetSize((20,30,40)) > 18 extractor3d.SetIndex((5,6,7)) > 19 > extractor3d.SetDirectionCollapseToStrategy(extractor3d.DIRECTIONCOLLAPS > ETOIDENTITY) > 20 print "strategy, ",extractor3d.GetDirectionCollapseToStrategy() > 21 newimg3d=extractor3d.Execute(rawimg3d) > 22 print "Finished 3d extractor" > 23 > > > python ./tryextract.py / > > 2 > strategy, 1 > Finished 2d extractor > 3 > strategy, 1 > Traceback (most recent call last): > File "./tryextract.py", line 21, in > newimg3d=extractor3d.Execute(rawimg3d) > File "/home/kny48981/.local/lib/python2.7/site- > packages/SimpleITK/SimpleITK.py", line 27115, in Execute > return _SimpleITK.ExtractImageFilter_Execute(self, *args) > RuntimeError: Exception thrown in SimpleITK ExtractImageFilter_Execute: > /tmp/SimpleITK-build/ITK-prefix/include/ITK- > 4.13/itkExtractImageFilter.hxx:99: > itk::ERROR: ExtractImageFilter(0x7fbf77727bc0): Extraction Region not > consistent with output image > > > > -- > This e-mail and any attachments may contain confidential, copyright and or > privileged material, and are for the use of the intended addressee only. If > you are not the intended addressee or an authorised recipient of the > addressee please notify us of receipt by returning the e-mail and do not use, > copy, retain, distribute or disclose the information in or attached to the e- > mail. > Any opinions expressed within this e-mail are those of the individual and > not necessarily of Diamond Light Source Ltd. > Diamond Light Source Ltd. cannot guarantee that this e-mail or any > attachments are free from viruses and we cannot accept liability for any > damage which you may sustain as a result of software viruses which may be > transmitted in or with the message. > Diamond Light Source Limited (company no. 4375679). Registered in > England and Wales with its registered office at Diamond House, Harwell > Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United > Kingdom > > The ITK community is transitioning from this mailing list to discourse.itk.org. > Please join us there! > ________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://www.kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > https://itk.org/mailman/listinfo/insight-users > The ITK community is transitioning from this mailing list to discourse.itk.org. > Please join us there! > ________________________________________ > Community mailing list > Community at itk.org > https://itk.org/mailman/listinfo/community > -- This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail. Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd. Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message. Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom From aharr8 at uwo.ca Wed May 30 14:53:40 2018 From: aharr8 at uwo.ca (Andrew Harris) Date: Wed, 30 May 2018 14:53:40 -0400 Subject: [ITK-users] using MHA file to store additional information about image Message-ID: Hello, I was wondering if it is possible to store additional information about an image as part of an MHA file. Specifically, we are capturing ultrasound using an arm that has encoders attached that report position in space, and I'd like to be able to include that information in the MHA file rather than keeping a separate record. Thanks in advance for the help. -- AH Andrew Harris, BSc with Honours (Medical Physics) PhD (CAMPEP) & MClSc Candidate ----------------------------------------------------------------------------------------------- *This email and any attachments thereto may contain private, confidential, and privileged materials for the sole use of the intended recipient. Any reviewing, copying, or distribution of this email (or any attachments thereto) by other than the intended recipient is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently destroy this email and any attachments thereto.* -------------- next part -------------- An HTML attachment was scrubbed... URL: From zivrafael.yaniv at nih.gov Wed May 30 16:10:03 2018 From: zivrafael.yaniv at nih.gov (Yaniv, Ziv Rafael (NIH/NLM/LHC) [C]) Date: Wed, 30 May 2018 20:10:03 +0000 Subject: [ITK-users] [ITK] using MHA file to store additional information about image In-Reply-To: References: Message-ID: <6F5F4975-1CDA-4885-B981-969CCF8700E7@nih.gov> Hello Andrew, The users mailing list for ITK has moved to a discussion forum: https://discourse.itk.org/, please post there in the future. I do not think that the MHA format will allow you to do this, but maybe I?m wrong. This is relatively common using the DICOM format and private tags (pp. 59 in part 5 of the standard, http://dicom.nema.org/medical/dicom/current/output/pdf/part05.pdf). The SimpleITK code below does what I believe you want (too long for ITK here). hope this helps Ziv import SimpleITK as sitk private_creator = "0009|0010" private_tag = "0009|0011" img = sitk.Image((128,128), sitk.sitkUInt8) img.SetMetaData(private_creator, "UWO Encoder Values") img.SetMetaData(private_tag,"0.18 0.76 0.97 0.87") sitk.WriteImage(img, "image_with_encoder_data.dcm") # read the image we just wrote, tell the reader to load the private tags image_reader = sitk.ImageFileReader() image_reader.SetFileName("image_with_encoder_data.dcm") image_reader.LoadPrivateTagsOn() img_read = image_reader.Execute() encoder_values_string = img_read.GetMetaData(private_tag) # convert the returned string to a list of floats encoder_values = [float(x) for x in encoder_values_string.split()] From: Andrew Harris Date: Wednesday, May 30, 2018 at 2:54 PM To: Insight-users Subject: [ITK] [ITK-users] using MHA file to store additional information about image Hello, I was wondering if it is possible to store additional information about an image as part of an MHA file. Specifically, we are capturing ultrasound using an arm that has encoders attached that report position in space, and I'd like to be able to include that information in the MHA file rather than keeping a separate record. Thanks in advance for the help. -- AH Andrew Harris, BSc with Honours (Medical Physics) PhD (CAMPEP) & MClSc Candidate ----------------------------------------------------------------------------------------------- This email and any attachments thereto may contain private, confidential, and privileged materials for the sole use of the intended recipient. Any reviewing, copying, or distribution of this email (or any attachments thereto) by other than the intended recipient is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently destroy this email and any attachments thereto. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dzenanz at gmail.com Wed May 30 16:25:35 2018 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Wed, 30 May 2018 16:25:35 -0400 Subject: [ITK-users] using MHA file to store additional information about image In-Reply-To: References: Message-ID: Hi Andrew, you can add content to image's MetaData dictionary. But you should look at how Plus does it (code , docs ). You might be able to use it directly. Regards, D?enan On Wed, May 30, 2018 at 2:53 PM Andrew Harris wrote: > Hello, I was wondering if it is possible to store additional information > about an image as part of an MHA file. Specifically, we are capturing > ultrasound using an arm that has encoders attached that report position in > space, and I'd like to be able to include that information in the MHA file > rather than keeping a separate record. Thanks in advance for the help. > > -- > > AH > > > Andrew Harris, BSc with Honours (Medical Physics) > > PhD (CAMPEP) & MClSc Candidate > > > ----------------------------------------------------------------------------------------------- > > *This email and any attachments thereto may contain private, > confidential, and privileged materials for the sole use of the intended > recipient. Any reviewing, copying, or distribution of this email (or any > attachments thereto) by other than the intended recipient is strictly > prohibited. If you are not the intended recipient, please contact the > sender immediately and permanently destroy this email and any attachments > thereto.* > The ITK community is transitioning from this mailing list to > discourse.itk.org. Please join us there! > ________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://www.kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > https://itk.org/mailman/listinfo/insight-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lasso at queensu.ca Wed May 30 22:59:25 2018 From: lasso at queensu.ca (Andras Lasso) Date: Thu, 31 May 2018 02:59:25 +0000 Subject: [ITK-users] [ITK] using MHA file to store additional information about image In-Reply-To: References: Message-ID: Yes, Plus toolkit has been using mha and nrrd files for many years to store tracked ultrasound data in a single file. Recently we use nrrd format more, as this format supports 3D+t image sequences more cleanly. At the beginning, we used ITK?s reader/writer, but metadata handling was not fast enough and we also needed dynamic header construction and memory-cached compressed streaming image I/O. We are now also adding support for lossy video codecs as non-standard extensions. Plus can reconstruct volumes from tracked ultrasound slices, connect to many ultrasound devices through native interfaces, connect to most optical and electromagnetic trackers, stream tracked ultrasound data through OpenIGTLink for real-time visualization to various applications, perform spatial and temporal calibrations, etc. Check out www.plustoolkit.org and www.slicerigt.org for details. There is a resident Plus expert at Robarts, Adam Rankin, you can contact him if you need more information, and we?ll have a one-week hackathon at Robarts in July where you can meet several experienced Plus and SlicerIGT users and developers (https://na-mic.github.io/ProjectWeek/PW29_2018_London_Canada/). Andras From: Community On Behalf Of D?enan Zukic Sent: Wednesday, May 30, 2018 4:26 PM To: Andrew Harris Cc: Insight-users Subject: Re: [ITK] [ITK-users] using MHA file to store additional information about image Hi Andrew, you can add content to image's MetaData dictionary. But you should look at how Plus does it (code, docs). You might be able to use it directly. Regards, D?enan On Wed, May 30, 2018 at 2:53 PM Andrew Harris > wrote: Hello, I was wondering if it is possible to store additional information about an image as part of an MHA file. Specifically, we are capturing ultrasound using an arm that has encoders attached that report position in space, and I'd like to be able to include that information in the MHA file rather than keeping a separate record. Thanks in advance for the help. -- AH Andrew Harris, BSc with Honours (Medical Physics) PhD (CAMPEP) & MClSc Candidate ----------------------------------------------------------------------------------------------- This email and any attachments thereto may contain private, confidential, and privileged materials for the sole use of the intended recipient. Any reviewing, copying, or distribution of this email (or any attachments thereto) by other than the intended recipient is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently destroy this email and any attachments thereto. The ITK community is transitioning from this mailing list to discourse.itk.org. Please join us there! ________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://www.kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: https://itk.org/mailman/listinfo/insight-users -------------- next part -------------- An HTML attachment was scrubbed... URL: