From francois.budin at kitware.com Mon Apr 2 14:12:25 2018 From: francois.budin at kitware.com (Francois Budin) Date: Mon, 2 Apr 2018 14:12:25 -0400 Subject: [ITK-users] [ANN] ITK 5.0.0 alpha is coming soon! Message-ID: Hello fellow ITK developers, We are planning to tag ITK 5.0.0 alpha later this week (around April 6th). Prior to this, there will be a freeze in the patches that are merged into ITK. This week, we will be careful to only merge patches that solves important bugs and help to clean up the dashboard. More improvements will be integrated into ITK 5.0.0 before the final release is tagged. The alpha tag does not mean that this is a feature freeze for ITK 5.0.0. We will follow the usual ITK release process and create release candidates when the real feature freeze happens. This alpha release is a preview to allow developers to get their code ready for this exciting new ITK version that integrates a large number of great improvements. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ashahrior.91994 at gmail.com Mon Apr 9 02:50:34 2018 From: ashahrior.91994 at gmail.com (Ashef Shahrior) Date: Mon, 9 Apr 2018 12:50:34 +0600 Subject: [ITK-users] 3D Segmentation and Visualization Message-ID: I am trying to do a project where I will do 3D segmentation and visualization with ITK and VTK. I have come up with 2 approaches - a) Read a Folder full of DICOM files, do segmentation on each of them and then visualize them with volume rendering. But I can't seem to figure out how to iterate over each individual DICOM file to load them in some image-reader. But I have a filling that this process is not a good one since I want to segment a particular portion of a 3D model and it'll be complicated to select the particular threshold region as different files may deal with it differently. b) Create a 3D volume model and then do segmentation on it. But I have no idea how to do segmentation on it. Can anyone please please please guide me? I have checked out the ITK-Apps folder. But I am having a lot of trouble building those projects. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jhlegarreta at vicomtech.org Mon Apr 9 03:04:51 2018 From: jhlegarreta at vicomtech.org (Jon Haitz Legarreta) Date: Mon, 9 Apr 2018 09:04:51 +0200 Subject: [ITK-users] 3D Segmentation and Visualization In-Reply-To: References: Message-ID: Dear Ashef, note that the ITK community has transitioned to discourse.itk.org: posting your question there is likely to attract a broader audience. That said, a) You can use ITK's DICOM support to read the DICOM files within a folder and load them into memory. Please check out Section 1.12 "Reading and Writing DICOM Images" of the ITK Software Guide [1] and/or the example in [2]. b) ITK has a variety of segmentation methods available. Check them in Chapter 4 "Segmentation" of the ITK Software Guide [1]. The Software Guide will also help you beginning with ITK. If you need further help, please, re-post your question on discourse.itk.org. Thanks, JON HAITZ [1] https://itk.org/ItkSoftwareGuide.pdf [2] https://itk.org/ITKExamples/src/IO/GDCM/ReadDICOMSeriesAndWrite3DImage/Documentation.html -- On 9 April 2018 at 08:50, Ashef Shahrior wrote: > I am trying to do a project where I will do 3D segmentation and > visualization with ITK and VTK. > I have come up with 2 approaches - > a) Read a Folder full of DICOM files, do segmentation on each of them and > then visualize them with volume rendering. But I can't seem to figure out > how to iterate over each individual DICOM file to load them in some > image-reader. But I have a filling that this process is not a good one since > I want to segment a particular portion of a 3D model and it'll be > complicated to select the particular threshold region as different files may > deal with it differently. > b) Create a 3D volume model and then do segmentation on it. But I have no > idea how to do segmentation on it. > Can anyone please please please guide me? > I have checked out the ITK-Apps folder. But I am having a lot of trouble > building those projects. > > 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 > From lebreton.a at gmail.com Tue Apr 10 04:02:46 2018 From: lebreton.a at gmail.com (Aurelie Le breton) Date: Tue, 10 Apr 2018 10:02:46 +0200 Subject: [ITK-users] Problem with LabelSetErodeImageFilter Message-ID: Hi, I have a question about the LabelSetErodeImageFilter. Is there a structurant element radius max, for the erode filter ? I need to use a closing filter, i've chosen to use the LabelSetDilateImageFilter followed by a LabelSetErodeImageFilter. My problem is that, when i set the radius to 15 pix, both of the dilate and erode filters give a result, but when the radius is set to 16 pix, only the dilate filter returns a correct output, the erode filter returns a black image, filled with '0' values. But there is no reason for the filter to fail.. Images are 1024*1024, containing only '0' and '1'. I've tested several datasets, i've the same behaviour. Here is my code (very basic) : typedef itk::Image Mask3dType; // dilate auto dilateFilter = itk::LabelSetDilateImageFilter::New(); dilateFilter->SetInput(input); dilateFilter->SetRadius(radius); // Erode auto erodeFilter = itk::LabelSetErodeImageFilter::New(); erodeFilter->SetInput(dilateFilter->GetOutput()); erodeFilter->SetRadius(radius); erodeFilter->Update(); Thanks in advance. -------------- next part -------------- An HTML attachment was scrubbed... URL: From richard.beare at gmail.com Tue Apr 10 05:18:46 2018 From: richard.beare at gmail.com (Richard Beare) Date: Tue, 10 Apr 2018 19:18:46 +1000 Subject: [ITK-users] Problem with LabelSetErodeImageFilter In-Reply-To: References: Message-ID: There isn't meant to be a limit to size of structuring element. A couple of possibilities I can think of. If your test involves single pixels set to 1, then perhaps there's a rounding error leading to the blank image. Single pixels are a slightly tricky corner case when dealing with large structuring elements, and probably not what you're going to be using in practice. If it is what you're using for the test, try a larger component instead. Secondly, something to consider. Are you actually after label operations? Testing with 1s and 0s only is a binary case and can be addressed with the ParabolicMorphology module. The computational bits are similar but there isn't the overhead of tracking the labels. Finally closings on label sets are somewhat poorly defined, which is why there isn't a label closing filter. You need to consider the precise behaviour you want when performing the erosion - should it separate touching labels or not. Also, you can construct arrangements of labels which will result in some components disappearing, which wouldn't happen if the operation was applied to each component separately - consider one label completely surrounded by another - the dilation wouldn't change the surrounded label, allowing the subsequent erosion operation to delete it if the structuring element is large enough. On Tue, Apr 10, 2018 at 6:02 PM, Aurelie Le breton wrote: > Hi, > I have a question about the LabelSetErodeImageFilter. > Is there a structurant element radius max, for the erode filter ? > I need to use a closing filter, i've chosen to use the > LabelSetDilateImageFilter followed by a LabelSetErodeImageFilter. > My problem is that, when i set the radius to 15 pix, both of the dilate > and erode filters give a result, but when the radius is set to 16 pix, only > the dilate filter returns a correct output, the erode filter returns a > black image, filled with '0' values. But there is no reason for the filter > to fail.. > Images are 1024*1024, containing only '0' and '1'. > I've tested several datasets, i've the same behaviour. > > > Here is my code (very basic) : > > > typedef itk::Image Mask3dType; > > // dilate > auto dilateFilter = itk::LabelSetDilateImageFilter Mask3dType>::New(); > dilateFilter->SetInput(input); > dilateFilter->SetRadius(radius); > > // Erode > auto erodeFilter = itk::LabelSetErodeImageFilter Mask3dType>::New(); > erodeFilter->SetInput(dilateFilter->GetOutput()); > erodeFilter->SetRadius(radius); > > erodeFilter->Update(); > > > Thanks in advance. > > > 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 ssult003 at odu.edu Tue Apr 10 11:28:50 2018 From: ssult003 at odu.edu (Sharmin Sultana) Date: Tue, 10 Apr 2018 11:28:50 -0400 Subject: [ITK-users] Binary Volume Registration by maximizing overlapping between two volumes Message-ID: Hi I am trying to rigidly register two segmented 3D binary volume. What I need is to maximize the overlapping between two volumes. I tried MatchingCardinalityImageToImageMetric and Amoeba Optimizer as in example ImageRegistration19.cxx. It works for 2D image, however in 3D it is very slow and at the end of the registration the moving image doesn?t align with the fixed image. Is there any registration example in ITK that works well for binary volume registration? I was wondering if there is anyone who used KappaStatisticImageToImageMetric to do binary volume registration. Any help would be greatly appreciated. -- Sharmin -------------- next part -------------- An HTML attachment was scrubbed... URL: From lasso at queensu.ca Tue Apr 10 14:33:14 2018 From: lasso at queensu.ca (Andras Lasso) Date: Tue, 10 Apr 2018 18:33:14 +0000 Subject: [ITK-users] [ITK] Binary Volume Registration by maximizing overlapping between two volumes In-Reply-To: References: Message-ID: Binary images are often converted to distance maps and registered as regular grayscale volumes. If you would like to further discuss this, please the question at https://discourse.itk.org/. Andras From: Community On Behalf Of Sharmin Sultana Sent: Tuesday, April 10, 2018 11:29 AM To: insight-users at itk.org Subject: [ITK] [ITK-users] Binary Volume Registration by maximizing overlapping between two volumes Hi I am trying to rigidly register two segmented 3D binary volume. What I need is to maximize the overlapping between two volumes. I tried MatchingCardinalityImageToImageMetric and Amoeba Optimizer as in example ImageRegistration19.cxx. It works for 2D image, however in 3D it is very slow and at the end of the registration the moving image doesn?t align with the fixed image. Is there any registration example in ITK that works well for binary volume registration? I was wondering if there is anyone who used KappaStatisticImageToImageMetric to do binary volume registration. Any help would be greatly appreciated. -- Sharmin -------------- next part -------------- An HTML attachment was scrubbed... URL: From lebreton.a at gmail.com Thu Apr 12 04:32:01 2018 From: lebreton.a at gmail.com (lilipj) Date: Thu, 12 Apr 2018 01:32:01 -0700 (MST) Subject: [ITK-users] Problem with LabelSetErodeImageFilter In-Reply-To: References: Message-ID: <1523521921967-0.post@n2.nabble.com> I've passed a 200*200 image containing a 60*60 square filled with '1' values in the center of the image, results are the same, erosion radius = 15 is ok, radius=16 and more returns an empty image. I've tried the ParabolicErodeFilter with a scale equal to radius*radius / 2 + 1, and it works, Thanks a lot. -- Sent from: http://itk-insight-users.2283740.n2.nabble.com/ From richard.beare at gmail.com Thu Apr 12 17:41:10 2018 From: richard.beare at gmail.com (Richard Beare) Date: Fri, 13 Apr 2018 07:41:10 +1000 Subject: [ITK-users] Problem with LabelSetErodeImageFilter In-Reply-To: <1523521921967-0.post@n2.nabble.com> References: <1523521921967-0.post@n2.nabble.com> Message-ID: Thanks - I'll have to check that out. Most likely a casting/comparison not quite right. On Thu, Apr 12, 2018 at 6:32 PM, lilipj wrote: > I've passed a 200*200 image containing a 60*60 square filled with '1' > values > in the center of the image, results are the same, erosion radius = 15 is > ok, > radius=16 and more returns an empty image. > > I've tried the ParabolicErodeFilter with a scale equal to radius*radius / 2 > + 1, and it works, > Thanks a lot. > > > > -- > Sent from: http://itk-insight-users.2283740.n2.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 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt.mccormick at kitware.com Tue Apr 17 17:13:32 2018 From: matt.mccormick at kitware.com (Matt McCormick) Date: Tue, 17 Apr 2018 17:13:32 -0400 Subject: [ITK-users] [ANN] ITK 5.0 Alpha 1: Modern C++ Message-ID: *ITK 5.0 Alpha 1 is ready for testing!* * - Source code (zip) - Source code (tar.gz) * ITK 5.0 brings dramatic improvements to ITK's API and performance. At the same time, there are minimal changes that break backwards compatibility. This the first in a series of alpha releases to enable the community to test and improve these major changes. In this first alpha release, we highlight ITK's adoption of and requirement for the *C++11 standard*. Prior to this release, a subset of C++11 functionality was utilized, when available, through backports and macros. ITKv5 deprecates or removes these macros (e.g. ITK_NULLPTR, ITK_DELETED_FUNCTION, ITK_NOEXCEPT, ITK_CONSTEXPR) and directly uses C++11 keywords such as delete , constexpr , nullptr , override , noexcept . The keywords auto and using as well as range-based loops are also now used heavily throughout ITK. ITKv5 includes some API changes. Even though we tried to minimize backward compatibility issues, there will be a few (see below for important changes). These changes were discussed by the community on the ITK Discourse forum [1] [2] [3] [4] . This ITK alpha release is purposefully created with the goal of helping developers to test their current software with this new ITK version, update their code if necessary, and report problems they encountered during this process. ITK now requires CMake 3.9.5 for configuration and a compiler that supports C++11. This means that Visual Studio 2015 or later is required for Windows development with the Microsoft toolchain. Important changes in style have also been integrated in ITK to match the C++11 best practices. This includes replacing typedef calls with the using keyword, the usage of the keyword auto when appropriate, and moving the macro ITK_DISALLOW_COPY_AND_ASSIGN from the private class section to the public class section. The ITK Software Guide has been updated to match these changes. As shown below, toolkit has adopted the application of the using keyword for type aliases , which many developers find easier to read and understand. template< typename TInputImage, typename TOutputImage > class ITK_TEMPLATE_EXPORT BoxImageFilter: public ImageToImageFilter< TInputImage, TOutputImage > { public: ITK_DISALLOW_COPY_AND_ASSIGN(BoxImageFilter); /?? Standard class type alias. ?/ using Self = BoxImageFilter; using Superclass = ImageToImageFilter< TInputImage, TOutputImage >; [...] protected: BoxImageFilter(); ~BoxImageFilter() {} void GenerateInputRequestedRegion() override; void PrintSelf(std::ostream & os, Indent indent) const override; private: RadiusType m_Radius; }; } // end namespace itk For more information on style changes, see the Coding Style Guide found in the ITK Software Guide. To test the 5.0 Alpha 1 Python packages, run python -m pip install --upgrade pip python -m pip install --upgrade --pre itk For a full list of the new features and changes in API, please review the log below. The community has been busy -- there have been *319 commits, 97,794 insertions, 152,791 deletions* since 4.13.0 was released in December! Please discuss your experiences on Discourse . The API is expected to change across alpha releases as we improve the library based on our experiences. Changes from v4.13.0 to v5.0 Alpha1 ------------------------------------------------ Bradley Lowekamp (49): ENH: Adding more swap methods BUG: Respect Visibility Preset for initial template visibility COMP: Use explicit equality for boolean evaluation of real number BUG: Keep the SetSeed# methods in IsolatedConnectedImageFilter ENH: Use direct for loops for implementing image transformations COMP: Use anonymous namespace for internal linkage ENH: Mark 2 template parameter ModulusTransform to be removed COMP: Remove legacy marking on definition of SetSeed methods STYLE: Use itk::v3 nested namespace for Rigid3DTransform BUG: Preserve option to use a "label value" mask and boolean mask ENH: update C+11 headers and try compile for headers ENH: Remove duplicated CMake module from upstream CMake COMP: Explicitly include the fixed width integer header before usage COMP: Update SimpleITKFilters for dependency issues BUG: The CXX language must be enable to check compiler variables PERF: Support move semantics for ITK smart pointers ENH: Remove usage of SmartPointerForward reference ENH: Remove unneeded internal smart pointer type COMP: Require MSVC VS14 2015 for C++11 compatibility ENH: Use C++11 template alias for Image::Rebind STYLE: Use copy-swap idiom for SmartPointer ENH: Use std::unique_ptr over itk::AutoPointer DOC: Document additional MaskValue variable BUG: remove unused cmake CXX try compile file BUG: Remove un-configured and unused CMake configure define BUG: Improve Doxygen extraction with blank line ENH: Remove TEMPLATED_FRIEND macro and try compile ENH: Replace optional tr1 type_traits with c++11 standard ENH: Assume c++11, remove configure defines for optional TR1 features BUG: Add missing extensions to ImageIO ENH: Only use std::atomic implementation for AtomicInt class ENH: Add direct SmartPointer conversions to match raw Pointers PERF: Use emplace when inserting into map for ProcessObject ENH: Create virtual interface for the MultiTheader ENH: Trying out the ThreadPool as a separate MultiThreader BUG: Fix uninitialized cross structuring element buffer BUG: Disable ThreadPools by default COMP: Add forward declaration of ExceptionObject in Macro.h COMP: Add forward declaration of ExceptionObject in Macro.h ENH: Use gtest_discover_tests if available DOC: Watershed filters is not stream-able COMP: Use nullptr over 0 for null pointer STYLE: Use SmartPointer direct conversion constructors Revert "BUG: Disable ThreadPools by default" BUG: Actually disable ThreadPools by default COMP: Suppress warning on CircleCI about itkIndex out of bounds ENH: Update CircleCI external data cache ENH: Address incorrect types with neighborhood iterator base class COMP: Make MirrorPadImageFilter::DelayBase a conventional parameter Bryce A Besler (1): ENH: Move DiscreteGaussianDerivativeImageFilter from Review to ITKImageFeature D?enan Zuki? (27): ENH: updating SphinxExamples and pointing to GitHub COMP: Get rid of warning about registry key STYLE: minor fixes BUG: duplicator crashes if buffered region is smaller than largest region STYLE: reducing code duplication and cleaning up method documentation ENH: adding itkReviewPrintTest to tests. It existed but was not invoked. COMP: turn FEM off by default, as it takes a long time to build COMP: fixing compiler warnings ENH: making ITKBioCell and ITKNeuralNetworks remote modules COMP: fixing configure error COMP: long paths are not yet supported by all the tools in the build chain COMP: using ITK_DELETED_FUNCTION, and more consistent override specifier ENH: simplify code and properly support long long type COMP: fix compile warning STYLE: avoid redirect for repository address in DVMeshNoise ENH: update remote modules to require CMake 3.9.5 BUG: fixing crash in test ENH: Remove ITKFEMRegistration from default configuration ENH: Fixing error and improving examples' test ENH: Use MultiThreaderBase STYLE: reducing duplication and removing commented code in DistanceMap tests STYLE: fixing typo BUG: more reliably detect Windows+DLLs case ENH: enable thread pool by default ENH: adding exponential decay option to MirrorPadImageFilter BUG: Set/GetGlobalDefaultNumberOfThreads was forgotten in legacy #ifdef BUG: fixing Windows+DLL ThreadPool sporadic destructor hanging Francois Budin (17): BUG: Update ITK test files SHA and debug ContentLinkSynchronization.sh ENH: Bump ITK version to 5.0.0. ENH: lifting path length limitation on Windows 10 version 1607+ BUG: Remove bad guards stopping inclusion of necessary hxx file BUG: Remove extern "C" call to include BUG: Initializes CMAKE_DEBUG_POSTFIX to be empty BUG: Initializes CMAKE_DEBUG_POSTFIX to be empty DOC: Remove CMake comments mentioning CMake 3.4 DOC: ITK_CONSTEXPR* and ITK_HAS_CXX11_RVREF are deprecated BUG: DCMTK builds fails with ICU ON on Linux and Mac BUG: LabelErodeDilate remote module repositories are out of sync BUG: Projects could not link to DCMTK on Windows and MacOS DOC: Add missing documentation for `github_compare` option ENH: Update CMake code to use IN_LIST (CMake >= 3.3) BUG: Update LabelErodeDilate ENH: Compile ITK with MKL (FFTW) installed on system BUG: Update ParabolicMorphology remote module Gregory C. Sharp (1): DOC: Fix misspelling of vertices Hans Johnson (86): ENH: Update Wiki examples for latest code changes COMP: Remove override warnings ENH: Cuberille future compilation deprecations ENH: Strain future compilation deprecations COMP: TwoProjectionRegistration Future proof code COMP: LevelSetsv4 used deprecated api COMP: N4 remove testing of deprecated SetMaskLabel BUG: Provide consistent GetOutput behavior BUG: GetModifiableTransformList needs to always be available BUG: Restore backwards compatibility DOC: Remove ITKv3 to ITKv4 migration documentation. COMP: Provide migration documentation old macros STYLE: Remove deprecated code directory contents STYLE: Remove all vestiges of ITKv3 code STYLE: Remove legacy code for ITKv5 starting ENH: Revert to include itkv3::Rigid3DTransform STYLE: Move Future deprecated to deprecated BUG: Restored testing for long HistorgramMatching COMP: Remove unnecessary conditional tests COMP: Force using lower deployment targert for fftw COMP: Use C++ headers over C headers COMP: Set ITK_VERSION_MAJOR to 5 STYLE: Fix header guard format COMP: Remove ITK_USE_STRICT_CONCEPT_CHECKING flag ENH: Set cmake Minimums to 3.9.5 COMP: Change min cmake version to 3.9.5 for circleci COMP: Directly use cmake compiler_detection.h STYLE: Fix typo requireing -> requiring COMP: Consistently set use of CMake 3.9.5 and options COMP: Enforce building ITK with C++11 COMP: Modularize cmake config like VTK. COMP: Use C++ headers over C headers (part 2) ENH: Scripts used during ITKv5 migration STYLE: Remove conditional version 201103L code COMP: Need to match type for different threaders COMP: Preparing for ITKv5 by adding override COMP: Use C++11 override directly STYLE: Use override statements for C++11 COMP: Use C++11 ITK_NULLPTR directly COMP: Use nullptr instead of 0 or NULL STYLE: Prefer nullptr for C++11 COMP: Use C++11 nullptr directly BUG: VXL visibility must match ITK visibility COMP: Use C++11 = delete directly COMP: Use C++11 constexpr directly STYLE: ITK_COMPILER_CXX_CONSTEXPR is always true BUG: Missing external linkage options for float and double. COMP: Remove deprecated C++ 11 features ENH: ReplaceitkGetObjectMacro.sh used during ITKv5 migration ENH: Update SeveralRemotes to latest version. COMP: Suppress invalid warning STYLE: Remove outdated conditional code STYLE: Remove unnecessary old CMakeCode ENH: Remote for SmoothingRecursiveYvvGaussianFilter STYLE: Prefer C++11 type alias over typedef BUG: Type alias errent typo in name BUG: ConceptChecking type matching failed. STYLE: Remove ITK_HAS variables that should not be defined COMP: Allow using cmake 3.9.5 default for RPATH setting STYLE: Replace itkStaticConstMacro with static constexpr BUG: Propagate C++11 requirements to external project STYLE: Prefer constexpr for const numeric literals STYLE: Use range-based loops from C++11 PERF: Allow compiler to choose best way to construct a copy PERF: Replace explicit return calls of constructor STYLE: Use auto for variable creation BUG: Restore ITK.kws.xml preferences ENH: Provide advanced development mode for writing GTests COMP: Use C++11 noexcept directly ENH: Use simplified/natural conversion to const pointer ENH: Use natural ConstPointer conversion STYLE: Use override statements for C++11 COMP: Use C++11 noexcept directly ENH: Add google test for itkIndex.h ENH: Make const operator[] conform to standards STYLE: Change aggregate classes to mirror std::array ENH: Update all remote modules with C++11 conformance BUG: New SmartPointer conversion ambiguity BUG: Error in ITK_VERSION construction ENH: Add introspection into the build process COMP: Silence warning of mismatched signs. ENH: Bring in C++11 updates for ITKBridgeNumPy STYLE: Do not use itkGetStaticConstMacro in ITK COMP: Make member name match kwstyle requirements. BUG: Add ability to construct SmartPointer with NULL BUG: Update NULL pointer patch with final fixes Hastings Greer (1): ENH: Add wrapping for Labeled PointSet to PointSet registration classes Jean-Christophe Fillion-Robin (3): BUG: Prevent gdcm "missing implementation" error on macOS BUG: Prevent gdcm "missing implementation" error on macOS STYLE: MeshIO: Introduce ITKIOMeshBase module. See #3393 Jon Haitz Legarreta (8): STYLE: Fix typo in itk::VariableLengthVector struct name. ENH: Set the InsightSoftwareConsortium repo as the remote. STYLE: Improve itkHoughTransform2DLinesImageFilter style. DOC: Add different GitHub badges to the `README.md` file. DOC: Change the ITK Git tips wiki page reference for Git scm website. DOC: Add commands in a `Review` section to the ITK Git cheat sheet. DOC: Change the `ITKGitCheatSheet.tex` file tittle. DOC: Make references to ITK issue tracking system consistent. Jon Haitz Legarreta Gorro?o (19): BUG: Fix bug in class LaTeX documentation Doxygen link. BUG: Fix unnecessary explicit itk namespace mention in Doxygen link. DOC: Remove redundant ellipsis after "etc." in LaTeX doc. DOC: Remove unnecessary EOF comments. DOC: Make namespace closing bracket comments consistent. DOC: Fix typo: substract to subtract. DOC: Remove unnecessary ifdef and class ending comments in FEM. DOC: Remove non-existing namespace comment. ENH: Add a code of conduct to the ITK project. ENH: Bump latest version of the ITKSplitComponents remote module. DOC: Remove unnecessary Doxygen \ref keyword in module crossrefs. DOC: Remove crossrefs to non-existing classes. DOC: Improve the ISSUE_TEMPLATE.md markdown file contents. DOC: Change the term `mailing list` in README.md. DOC: Fix syntax mistake in `Sharing Data` section of CoC. DOC: Fix typos in class doc. ENH: Add Python wrap file to itk::MultiResolutionPDEDeforableRegistration. STYLE: Update the wrap files to match current CMake syntax. DOC: Fix typo. KWSys Upstream (1): KWSys 2018-01-08 (f7990fc2) Marcus D. Hanwell (1): DOC: Add GitCheatSheet sources Martino Pilia (2): BUG: fix itkFormatWarning in Python wrapping BUG: fix itkFormatWarning in Python wrapping Matthew McCormick (46): BUG: Remove ITKTubeTK remote ENH: Add wrapping for BSplineTransformInitializer ENH: Add PolarTransform remote module COMP: Do not use absolute path to TestBigEndian.cmake in GDCM COMP: Enable pthreads shim with Emscripten COMP: Do not use absolute path to TestBigEndian.cmake in GDCM COMP: Enable pthreads shim with Emscripten BUG: Allow module examples to be enabled when built externally ENH: Ensure external module examples get added to current build tree COMP: Specify OutputImageType for boundary conditions in FFTPadImageFilter COMP: Update DCMTK to 2018.01.16 and support Emscripten COMP: Fix cross compiling DCMTK BUG: Do not set DCMTK_WITH_XML to ON in DCMTK configuration COMP: itk::Math perfect forward return type BUG: Do not segfault when trying to use PDEDeformableRegistrationFilter COMP: Ensure CastXML uses C++11 with GCC or Clang COMP: Remove legacy BackTransform methods from Rigid3DTransform COMP: Explicitly add NumericTraits::max to the API COMP: Address SG line length warnings in DataRepresentation, Filtering DOC: Update README Software Guide link DOC: Update Discussion link in the README ENH: Add banner to the README COMP: Bump KWStyle to 2018-02-22 master COMP: Add missing wrapping for MultiThreaderBase COMP: Do not wrap methods with ?unknown? type COMP: Add missing itkSimpleFastMutexLock headers ENH: Import the ITKBridgeNumPy module BUG: GetArrayFromImage calls UpdateLargestPossibleRegion BUG: Add missing wrapping for PoolMultiThreader BUG: Exclude MultiThreaderBase from GetNameOfClass test COMP: Add SimpleFastMutexLock include to ESMDemonsRegistrationFunction BUG: Cast to correct iterator type in PeriodicBoundaryCondition BUG: Fix casting in PeriodicBoundaryCondition COMP: Work around RegionGrow2DTest compiler error on ppc64le BUG: Bump KWStyle for C++11 brace list initialization support BUG: Fix MeshFileWriter export specification BUG: Wrap long long instead of long ENH: Create ITKIOMeshVTK module COMP: ExceptionObject declaration must come before usage ENH: Migrate BYU IO into ITKIOMeshBYU COMP: Bump ParabolicMorphology for MultiThreaderChanges COMP: Remove SmartPointer NULL initialization compatibility code DOC: Use http for issues.itk.org ENH: Migrate MultiScaleHessianBasedMeasureImageFilter out of ITKReview ENH: Move ContourExtractor2DImageFilter out of ITKReview DOC: Avoid Voronoi term when referring to the pixel center Niels Dekker (18): PERF: Improved speed of copying and resizing NeighborhoodAllocator STYLE: Removed 'char(255)' casts from NumericTraits min() and max() STYLE: Removed assignments from Neighborhood copy constructor BUG: Fixed semantics NeighborhoodAllocator operator== and operator!= BUG: GaussianDerivativeImageFunction should use image spacing consistently PERF: NeighborhoodOperatorImageFunction avoids copy ConstNeighborhoodIterator COMP: Worked around endless VS2015 Release compilation on Math::Floor PERF: Removed blurring from GaussianDerivativeImageFunction ENH: Added GetCenterPoint and SetCenterPoint to EllipseSpatialObject DOC: Explained calling GetCenterPoint() when using Hough filter->GetCircles() ENH: IsInside(point) made easier, especially for HoughTransform circles STYLE: Using C++11 auto in HoughTransform2DCirclesImageFilter PERF: GaussianDerivativeImageFunction now reuses NeighborhoodIterator objects PERF: GaussianDerivativeImageFunction constructor, RecomputeGaussianKernel() COMP: ITK_DISALLOW_COPY_AND_ASSIGN now unconditionally does '= delete' COMP: Moved ITK_DISALLOW_COPY_AND_ASSIGN calls to public section COMP: Manually moved ITK_DISALLOW_COPY_AND_ASSIGN calls to public section COMP: Moved ITK_DISALLOW_COPY_AND_ASSIGN calls in *.cxx to public section Sean McBride (19): STYLE: Fixed up confusion between base 2 and base 10 prefixes STYLE: arranged/alphabetized things to make subsequent changes reviewable COMP: Fixed some missing name mangling of libTIFF symbols BUG: fixed crash on macOS under guardmalloc from RunOSCheck() BUG: don't use double underscore, which is reserved in C++ STYLE: fixed some spelling, spacing, and comments DOC: Fixed comment about LegacyAnalyze75Mode default value BUG: Some minor cleanup and improvement after itkNiftiImageIO code review STYLE: arranged/alphabetized things to make subsequent changes reviewable COMP: Fixed some missing name mangling of libTIFF symbols BUG: Analyze 7.5 fixes/improvements COMP: Mangle HDF5 symbol names COMP: Fixed clang Wrange-loop-analysis warnings DOC: fixed minor typo in comment BUG: fixed crash on macOS under guardmalloc from RunOSCheck() COMP: Mangle HDF5 symbol names BUG: Revert part of f38b1dd4, which caused a regression ENH: Added new DetermineFileType() API to NiftiImageIO COMP: fixed clang warning about unnecessary copy in for loop Simon Rit (1): BUG: fix deadlock in FFTW for windows shared libs Taylor Braun-Jones (1): BUG: Handle single-component PLANARCONFIG_SEPARATE TIFF images (#ITK-3518) VXL Maintainers (3): VNL 2018-01-25 (ed159d55) VNL 2018-01-31 (39559d06) VNL 2018-03-04 (09a097e6) Ziv Yaniv (1): ENH: Adding user set min and max values for noise. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aharr8 at uwo.ca Fri Apr 27 12:49:47 2018 From: aharr8 at uwo.ca (Andrew Harris) Date: Fri, 27 Apr 2018 12:49:47 -0400 Subject: [ITK-users] [ITK] What units are used for initial settings with the PowellOptimizerv4 Message-ID: Hello, I've been looking for a while and I can't find this in documentation. I was hoping someone could tell me what units are used for OptimizerScalesType, SetStepTolerance, SetValueTolerance, and SetStepLength for the PowellOptimizerv4. That is to say, are these measured in mm, pixels, degrees, radians? -- 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 elli.pfaehler at gmail.com Sun Apr 29 14:13:09 2018 From: elli.pfaehler at gmail.com (Elli) Date: Sun, 29 Apr 2018 11:13:09 -0700 (MST) Subject: [ITK-users] Problem using CMAKE including ITK, VTK and GDCM Message-ID: <1525025589459-0.post@n7.nabble.com> 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/ From dzenanz at gmail.com Mon Apr 30 09:55:45 2018 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Mon, 30 Apr 2018 13:55:45 +0000 Subject: [ITK-users] [ITK] What units are used for initial settings with the PowellOptimizerv4 In-Reply-To: References: Message-ID: ?Hi Andrew, pixel spacing and similar things are measured in application-specified? units. If you are working with medical images those are usually millimeters (coming from DICOM standard). Regards, D?enan On Fri, Apr 27, 2018 at 12:49 PM Andrew Harris wrote: > Hello, I've been looking for a while and I can't find this in > documentation. I was hoping someone could tell me what units are used for > OptimizerScalesType, SetStepTolerance, SetValueTolerance, and SetStepLength > for the PowellOptimizerv4. That is to say, are these measured in mm, > pixels, degrees, radians? > > -- > > 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 dzenanz at gmail.com Mon Apr 30 09:59:17 2018 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Mon, 30 Apr 2018 13:59:17 +0000 Subject: [ITK-users] Problem using CMAKE including ITK, VTK and GDCM In-Reply-To: <1525025589459-0.post@n7.nabble.com> References: <1525025589459-0.post@n7.nabble.com> Message-ID: 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 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From srbn.ghosh99 at gmail.com Mon Apr 30 10:51:46 2018 From: srbn.ghosh99 at gmail.com (Shrabani Ghosh) Date: Mon, 30 Apr 2018 07:51:46 -0700 (MST) Subject: [ITK-users] Convert .vtk to minc format Message-ID: <1525099906443-0.post@n2.nabble.com> To run a code I have to convert VTK format file to minc. Using which code I can do that? -- Sent from: http://itk-insight-users.2283740.n2.nabble.com/ From aashish.chaudhary at kitware.com Mon Apr 30 10:56:04 2018 From: aashish.chaudhary at kitware.com (Aashish Chaudhary) Date: Mon, 30 Apr 2018 10:56:04 -0400 Subject: [ITK-users] Convert .vtk to minc format In-Reply-To: <1525099906443-0.post@n2.nabble.com> References: <1525099906443-0.post@n2.nabble.com> Message-ID: Shrabani, please have a look at this wiki page: https://www.vtk.org/Wiki/VTK/MNI_File_Formats - aashish On Mon, Apr 30, 2018 at 10:51 AM, Shrabani Ghosh wrote: > To run a code I have to convert VTK format file to minc. > > Using which code I can do that? > > > > -- > Sent from: http://itk-insight-users.2283740.n2.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 > -- *| Aashish Chaudhary | Technical Leader | Kitware Inc. * *| http://www.kitware.com/company/team/chaudhary.html * -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt.mccormick at kitware.com Mon Apr 30 11:05:12 2018 From: matt.mccormick at kitware.com (Matt McCormick) Date: Mon, 30 Apr 2018 11:05:12 -0400 Subject: [ITK-users] Convert .vtk to minc format In-Reply-To: References: <1525099906443-0.post@n2.nabble.com> Message-ID: If this is an image, then you want to use ITK. Recent versions of ITK support the MINC 2 file format out of the box. Here is an example: https://itk.org/ITKExamples/src/IO/ImageBase/ConvertFileFormats/Documentation.html HTH, Matt On Mon, Apr 30, 2018 at 10:56 AM, Aashish Chaudhary wrote: > Shrabani, > > please have a look at this wiki page: > https://www.vtk.org/Wiki/VTK/MNI_File_Formats > > - aashish > > On Mon, Apr 30, 2018 at 10:51 AM, Shrabani Ghosh > wrote: >> >> To run a code I have to convert VTK format file to minc. >> >> Using which code I can do that? >> >> >> >> -- >> Sent from: http://itk-insight-users.2283740.n2.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 > > > > > -- > | Aashish Chaudhary > | Technical Leader > | Kitware Inc. > | http://www.kitware.com/company/team/chaudhary.html > > 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 >