GithubHelp home page GithubHelp logo

kitware / slicersalt Goto Github PK

View Code? Open in Web Editor NEW
53.0 17.0 25.0 2.37 MB

An open-source, free comprehensive software that will allow biomedical scientists to precisely locate shape changes in their imaging studies. This software called Slicer Shape AnaLysis Toolbox (SlicerSALT), will enhance the intuitiveness and ease of use for such studies, as well as allow researchers to find shape changes with higher statistical power. Altogether this constitutes a crucial resource for the imaging field that will enable many and important new findings in biomedical imaging studies.

Home Page: https://salt.slicer.org

License: Other

CMake 17.16% C++ 17.61% Python 65.24%
shape-analysis kitware 3d-slicer 3d-slicer-custom-application

slicersalt's Introduction

SlicerSALT

SlicerSALT is an open-source, free comprehensive software that will allow biomedical scientists to precisely locate shape changes in their imaging studies.

SlicerSALT banner

This software called Slicer Shape AnaLysis Toolbox (SlicerSALT), will enhance the intuitiveness and ease of use for such studies, as well as allow researchers to find shape changes with higher statistical power. Altogether this constitutes a crucial resource for the imaging field that will enable many and important new findings in biomedical imaging studies.

Maintainers

Resources

To learn more about SlicerSALT and Slicer, check out the following resources.

License

This software is licensed under the terms of the BSD 3-Clause.

slicersalt's People

Contributors

allemangd avatar bpaniagua avatar cquammen avatar dzenanz avatar finetjul avatar harrydc avatar hina-shah avatar jcfr avatar laurapascal avatar lopezmt avatar luzpaz avatar phcerdan avatar sh4174 avatar sjh26 avatar vicory avatar vovythevov avatar yehan0223 avatar zhiyliu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

slicersalt's Issues

Statistics function

Hello,
I heard you are working on new statistical function.
Is there any timeline or plan for that?
I'd rather postpone to using older t-test for 1-2 months if it will be implemented soon.

Change the Slicer tag to more recent version

As of September-14-2017, changing the Slicer tag to a latest gives:

  • Bug fixes
  • VTK8 addition
  • enabled Qt5 (Although this still is in testing phase)
  • Python3 (this is also in testing)

However, the tag change would also mean that there might be changes for the extensions. Even if Qt5 is not added to the extensions, they would need changes necessary for VTK8.

DMRI error on start up

Traceback (most recent call last):
File "/work/Projects/slicerSALT/SlicerSALT-0.1.0-c988d2d-linux-amd64/lib/Slicer-4.7/qt-scripted-modules/DMRIInstall.py", line 33, in init
model = slicer.app.extensionsManagerModel()
AttributeError: qSlicerApplication has no attribute named 'extensionsManagerModel'

Enable rigid alignment

Enable rigid alignment modules from slicer and add them to data importer for allowing cohort alignment.

Missing Fortran_COMPILER_ID

In linux dashboard and locally reproduced.

-- Looking up any Fortran compiler - Fortran_COMPILER-NOTFOUND
CMake Error at /work/Sw/CMake/cmake-3.11.4-Linux-x86_64/share/cmake-3.11/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find Fortran (missing: Fortran_COMPILER_ID)
Call Stack (most recent call first):
  /work/Sw/CMake/cmake-3.11.4-Linux-x86_64/share/cmake-3.11/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/CMake/FindFortran.cmake:621 (find_package_handle_standard_args)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/GROUPS/SuperBuild/External_LAPACK.cmake:155 (find_package)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/slicersources-src/CMake/ExternalProjectDependency.cmake:852 (include)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/slicersources-src/CMake/ExternalProjectDependency.cmake:916 (ExternalProject_Include_Dependencies)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/slicersources-src/SuperBuild.cmake:414 (ExternalProject_Include_Dependencies)
  /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/slicersources-src/CMakeLists.txt:717 (include)


-- Configuring incomplete, errors occurred!
See also "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/CMakeFiles/CMakeOutput.log".
See also "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/CMakeFiles/CMakeError.log".

External_python-scipy: Fix windows link error

Based on the change of https://github.com/jcfr/SlicerSALT/commits/release-1.0, the windows build is getting further and fails with the following error:

"D:\D\S\SSALT-0-build\slicersources-build\python-scipy.vcxproj" (default target) (1) ->
(CustomBuild target) ->
  CUSTOMBUILD : error : Command "lib.exe build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dcosqb.o build\t
emp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dcosqf.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dco
sqi.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dcost.o build\temp.win-amd64-2.7\scipy\fftpack\src\
dfftpack\dcosti.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dfftb.o build\temp.win-amd64-2.7\scipy\
fftpack\src\dfftpack\dfftb1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dfftf.o build\temp.win-amd6
4-2.7\scipy\fftpack\src\dfftpack\dfftf1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dffti.o build\t
emp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dffti1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsi
nqb.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsinqf.o build\temp.win-amd64-2.7\scipy\fftpack\src
\dfftpack\dsinqi.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsint.o build\temp.win-amd64-2.7\scipy
\fftpack\src\dfftpack\dsint1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsinti.o build\temp.win-am
d64-2.7\scipy\fftpack\src\dfftpack\zfftb.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zfftb1.o build
\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zfftf.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zf
ftf1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zffti.o build\temp.win-amd64-2.7\scipy\fftpack\src
\dfftpack\zffti1.o /OUT:build\temp.win-amd64-2.7\dfftpack.lib" failed with exit status 127 [D:\D\S\SSALT-0-bu
ild\slicersources-build\python-scipy.vcxproj]

DataImporter.py throws errors on startup

Traceback (most recent call last):
File "/work/Projects/slicerSALT/SlicerSALT-0.1.0-c988d2d-linux-amd64/lib/Slicer-4.7/qt-scripted-modules/DataImporter.py", line 260, in setup
self.logic = DataImporterLogic()
File "/work/Projects/slicerSALT/SlicerSALT-0.1.0-c988d2d-linux-amd64/lib/Slicer-4.7/qt-scripted-modules/DataImporter.py", line 44, in init
self.createSingleDisplaySegmentModelNode()
File "/work/Projects/slicerSALT/SlicerSALT-0.1.0-c988d2d-linux-amd64/lib/Slicer-4.7/qt-scripted-modules/DataImporter.py", line 51, in createSingleDisplaySegmentModelNode
if MRMLUtility.isMRMLNodeEmpty(self.singleDisplayedSegmentation, 'vtkMRMLModelNode'):
AttributeError: type object 'MRMLUtility' has no attribute 'isMRMLNodeEmpty'

Question: How can I pass a CMake option to a external module?

For example, for Sequences

# Sequences
set(extension_name "Sequences")
set(${extension_name}_SOURCE_DIR "${CMAKE_BINARY_DIR}/${extension_name}")
FetchContent_Populate(${extension_name}
  SOURCE_DIR     ${${extension_name}_SOURCE_DIR}
  GIT_REPOSITORY ${EP_GIT_PROTOCOL}://github.com/SlicerRt/Sequences.git
  GIT_TAG        a4b32e822505373d34f250123421ac9485f3947c
  GIT_PROGRESS   1
  QUIET
)

If I set a Sequences option in SlicerSALT (see upstream repo CMakeLists.txt for the option)
option(SEQUENCES_ENABLE_EXPERIMENTAL_MODULES "Enable the building of work-in-progress, experimental modules." ON)

Sequences ignores that option, and it is built with that option turned OFF (the default in their CMakelists.txt)
This is just an example, I don't want to build EXPERIMENTAL_MODULES, but I would like to provide an option to disable SampleData (see: #50)

Thanks

GROUPS extension

This extension has been facing some challenges to build on Windows:

  • We need to compile lapack in windows which requires specific compilers (fortran)

Data importer module in packages is empty

Data importer module in packages is empty. This is most probably due to a naming conflict with the directory in SPHARM-PDM for CommonUtilities. The easiest solution to this is to probably rename the folder in SPHARM-PDM. But ideally, the code for CommonUtilities should live in a repository if their task is the same.

Python module SequenceSampleData depends on disabled SampleData

Failed to instantiate module when launching SlicerSALT.

Traceback (most recent call last):
  File "/home/user/Software/Shape/SALT/buildRelWithDebInfo/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/SequenceSampleData.py", line 33, in __init__
    import SampleData
ImportError: No module named SampleData
qSlicerPythonCppAPI::instantiateClass  - [ "SequenceSampleData" ] - Failed to instantiate scripted pythonqt class "SequenceSampleData" 0x7f4c51d834c8
Fail to instantiate module  "SequenceSampleData"

It is triggered from here.

We have explicitly disabled SampleData here

BUG: Python errors on start

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOM.py", line 11, in <module>
    import DICOMLib
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/__init__.py", line 4, in <module>
    from DICOMWidgets import *
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/DICOMWidgets.py", line 6, in <module>
    from packaging import version
ImportError: No module named packaging
loadSourceAsModule - Failed to load file "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOM.py"  as module "DICOM" ! 
Fail to instantiate module  "DICOM" 
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMScalarVolumePlugin.py", line 4, in <module>
    from DICOMLib import DICOMPlugin
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/__init__.py", line 4, in <module>
    from DICOMWidgets import *
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/DICOMWidgets.py", line 6, in <module>
    from packaging import version
ImportError: No module named packaging
loadSourceAsModule - Failed to load file "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMScalarVolumePlugin.py"  as module "DICOMScalarVolumePlugin" ! 
Fail to instantiate module  "DICOMScalarVolumePlugin" 
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMSlicerDataBundlePlugin.py", line 3, in <module>
    from DICOMLib import DICOMPlugin
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/__init__.py", line 4, in <module>
    from DICOMWidgets import *
  File "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMLib/DICOMWidgets.py", line 6, in <module>
    from packaging import version
ImportError: No module named packaging
loadSourceAsModule - Failed to load file "/work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/qt-scripted-modules/DICOMSlicerDataBundlePlugin.py"  as module "DICOMSlicerDataBundlePlugin" ! 
Fail to instantiate module  "DICOMSlicerDataBundlePlugin" 
  Error(s):
    Failed to find python interpreter for CLI: /work/Projects/slicerSALT/slicerSALT-Dashboards/Nightly/SlicerSALT-0-build/Slicer-build/lib/SlicerSALT-4.9/cli-modules/PyCLIModule4Test.py
Fail to instantiate module  "PyCLI4Test" 
When loading module  "DICOMPatcher" , the dependency "DICOM" failed to be loaded. 
Object::connect: No such signal qSlicerGPUMemoryComboBox::currentTextChanged(QString)
Object::connect:  (sender name:   'GPUMemoryComboBox')
Object::connect:  (receiver name: 'qSlicerVolumeRenderingSettingsPanel')
Switch to module:  "Home" 

Setup automated upload of SlicerSalt packages on girder

Slicer build system only support uploading on Midas, it should be updated to support upload using a girder client.

Similarly to what was already done to support upload the extension to both Midas and slicer package manager.

fix dashboards

@jcfr suggests

  • Linux - stays where it is (Bea will fix)
  • Linux - slicer factory (JC and Pablo will set up)
  • Mac - slicer factory (JC and Pablo will set up)
  • Win - slicer factory (JC and Pablo will set up)

Error building python-scipy on Windows

CUSTOMBUILD : error : Command "lib.exe build\temp.win-amd64-2.7\scipy\fftpack\src\dfft
pack\dcosqb.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dcosqf.o build\temp.wi
n-amd64-2.7\scipy\fftpack\src\dfftpack\dcosqi.o build\temp.win-amd64-2.7\scipy\fftpack\s
rc\dfftpack\dcost.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dcosti.o build\t
emp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dfftb.o build\temp.win-amd64-2.7\scipy\fftp
ack\src\dfftpack\dfftb1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dfftf.o bu
ild\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dfftf1.o build\temp.win-amd64-2.7\scip
y\fftpack\src\dfftpack\dffti.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dffti
1.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsinqb.o build\temp.win-amd64-2.
7\scipy\fftpack\src\dfftpack\dsinqf.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpac
k\dsinqi.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\dsint.o build\temp.win-am
d64-2.7\scipy\fftpack\src\dfftpack\dsint1.o build\temp.win-amd64-2.7\scipy\fftpack\src\d
fftpack\dsinti.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zfftb.o build\temp.
win-amd64-2.7\scipy\fftpack\src\dfftpack\zfftb1.o build\temp.win-amd64-2.7\scipy\fftpack
\src\dfftpack\zfftf.o build\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zfftf1.o build
\temp.win-amd64-2.7\scipy\fftpack\src\dfftpack\zffti.o build\temp.win-amd64-2.7\scipy\ff
tpack\src\dfftpack\zffti1.o /OUT:build\temp.win-amd64-2.7\dfftpack.lib" failed with exit
status 127 [C:\S\b\slicersources-build\python-scipy.vcxproj]

Fix windows build error due to path too long

 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(312,5): error MSB3491: Could not write lines to file "x64\Release\vtkSlicerSkeletalRepresentationInitializerModuleLogicHierarchy\vtkSlice.273E9726.tlog\vtkSlicerSkeletalRepresentationInitializerModuleLogicHierarchy.lastbuildstate". The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. [D:\D\P\SSALT-0-build\Slicer-build\E\SlicerSkeletalRepresentation\SkeletalRepresentationInitializer\Logic\vtkSlicerSkeletalRepresentationInitializerModuleLogicHierarchy.vcxproj] [D:\D\P\SSALT-0-build\slicersources-build\Slicer.vcxproj

See https://open.cdash.org/viewBuildError.php?buildid=5532315

Error in ShapeRegressionExtension: multiple rules generate lib/SlicerSALT-4.9/qt-scripted-modules/Resources/Icons/ShapeRegressionExtension.png

-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /usr/bin/git (found version "2.18.0")
-- Found Subversion: /usr/bin/svn (found version "1.10.0")
-- Found PythonLibs: /usr/lib/libpython2.7.so (found version "2.7.15")
-- Trying to find DCMTK expecting DCMTKConfig.cmake
-- Trying to find DCMTK expecting DCMTKConfig.cmake - ok
-- Found CURL: /usr/lib/libcurl.so (found version "7.61.0")
-- RapidJSON found. Headers: ./include/SlicerSALT-4.9
-- Trying to find DCMTK expecting DCMTKConfig.cmake
-- Trying to find DCMTK expecting DCMTKConfig.cmake - ok
-- Found PythonLibs: /usr/lib/libpython2.7.so
-- Found PythonInterp: .virtualenvs/slicer/bin/python2.7 (found version "2.7.15")
-- Configuring ShapeRegressionExtension with Qt 5.11.1 (using modules: Core, Widgets, Multimedia, Network, OpenGL, PrintSupport, UiTools, Xml, XmlPatterns, Svg, Sql, WebEngine, WebEngineWidgets, WebChannel, )
-- Setting QT_PLUGINS_DIR: /usr/plugins
-- Setting QT_BINARY_DIR: /usr/bin
-- Checking EXTENSION_NAME variable
-- Checking EXTENSION_NAME variable - NOTDEFINED
-- Checking MODULE_NAME variable
-- Checking MODULE_NAME variable - NOTDEFINED
-- Checking PROJECT_NAME variable
-- Checking PROJECT_NAME variable - ShapeRegressionExtension
-- Setting EXTENSION_NAME ......................: ShapeRegressionExtension
-- Checking to see if CXX compiler accepts flag -Wno-deprecated
-- Checking to see if CXX compiler accepts flag -Wno-deprecated - Yes
-- Checking to see if CXX compiler accepts flag -features=no%anachronisms
-- Checking to see if CXX compiler accepts flag -features=no%anachronisms - No
-- Checking to see if CXX compiler accepts flag -fdiagnostics-show-option
-- Checking to see if CXX compiler accepts flag -fdiagnostics-show-option - yes
-- Checking to see if CXX compiler accepts flag -Wl,--no-undefined
-- Checking to see if CXX compiler accepts flag -Wl,--no-undefined - yes
-- Checking to see if CXX compiler accepts flag -fstack-protector-all
-- Checking to see if CXX compiler accepts flag -fstack-protector-all - yes
-- Adding ConfigureAdditionalLauncherSettings target
-- Adding ConfigureAdditionalLauncherSettings target - yes (because configuring ShapeRegressionExtension-build)
CMake Warning at Software/Slicer/Shape/build-experimental/slicersources-src/Extensions/CMake/SlicerBlockAdditionalLauncherSettings.cmake:48 (message):
  Dependent extension Sequences cannot be found by CMake find_package(),
  therefore paths variables cannot be imported from this extension.  The
  problem can be resolved by generating SequencesConfig.cmake by adding
  include(${Slicer_EXTENSION_GENERATE_CONFIG}) to the top-level
  CMakeLists.txt of the dependent exension.
Call Stack (most recent call first):
  Software/Slicer/Shape/build-experimental/Slicer-build/UseSlicer.cmake:279 (include)
  CMakeLists.txt:28 (include)


-- Setting EXTENSION_SOURCE_DIR ................: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension
-- Setting EXTENSION_SUPERBUILD_BINARY_DIR .....: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting MIDAS_PACKAGE_URL ...................: http://slicer.kitware.com/midas3
-- Setting MIDAS_PACKAGE_EMAIL .................: OBFUSCATED
-- Setting MIDAS_PACKAGE_API_KEY ...............: OBFUSCATED
-- Setting EXTENSION_SVNUSERNAME ...............: NOT DEFINED
-- Setting EXTENSION_SVNPASSWORD ...............: NOT DEFINED
-- Setting EXTENSION_DEPENDS ...................: Sequences
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting EXTENSION_HOMEPAGE ..................:
-- Setting EXTENSION_CONTRIBUTORS ..............: Laura Pascal (Kitware Inc.), Beatriz Paniagua (Kitware Inc.), James Fishb [...]
-- Setting EXTENSION_CATEGORY ..................: Shape Regression
-- Setting EXTENSION_ICONURL ...................:
-- Setting EXTENSION_DESCRIPTION ...............: Computation and visualization of time-regressed shapes in a collection of [...]
-- Setting EXTENSION_SCREENSHOTURLS ............:
-- Setting EXTENSION_ENABLED ...................: 1
-- Setting EXTENSION_STATUS ....................: Beta
-- Found Git: /usr/bin/git
-- RapidJSON found. Headers: ./include/SlicerSALT-4.9
-- Trying to find DCMTK expecting DCMTKConfig.cmake
-- Trying to find DCMTK expecting DCMTKConfig.cmake - ok
-- Configuring ShapeRegressionExtension with Qt 5.11.1 (using modules: Core, Widgets, Multimedia, Network, OpenGL, PrintSupport, UiTools, Xml, XmlPatterns, Svg, Sql, WebEngine, WebEngineWidgets, WebChannel, )
-- Setting QT_PLUGINS_DIR: /usr/plugins
-- Setting QT_BINARY_DIR: /usr/bin
-- Checking EXTENSION_NAME variable
-- Checking EXTENSION_NAME variable - ShapeRegressionExtension
-- Adding ConfigureAdditionalLauncherSettings target
-- Adding ConfigureAdditionalLauncherSettings target - yes (because configuring ShapeRegressionExtension-build)
-- Setting EXTENSION_SOURCE_DIR ................: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension
-- Setting EXTENSION_SUPERBUILD_BINARY_DIR .....: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting MIDAS_PACKAGE_URL ...................: http://slicer.kitware.com/midas3
-- Setting MIDAS_PACKAGE_EMAIL .................: OBFUSCATED
-- Setting MIDAS_PACKAGE_API_KEY ...............: OBFUSCATED
-- Setting EXTENSION_SVNUSERNAME ...............: NOT DEFINED
-- Setting EXTENSION_SVNPASSWORD ...............: NOT DEFINED
-- Setting EXTENSION_DEPENDS ...................: Sequences
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting EXTENSION_HOMEPAGE ..................:
-- Setting EXTENSION_CONTRIBUTORS ..............: Laura Pascal (Kitware Inc.), Beatriz Paniagua (Kitware Inc.), James Fishb [...]
-- Setting EXTENSION_CATEGORY ..................: Shape Regression
-- Setting EXTENSION_ICONURL ...................:
-- Setting EXTENSION_DESCRIPTION ...............: Computation and visualization of time-regressed shapes in a collection of [...]
-- Setting EXTENSION_SCREENSHOTURLS ............:
-- Setting EXTENSION_ENABLED ...................: 1
-- Setting EXTENSION_STATUS ....................: Beta
-- Configuring Scripted module: RegressionComputation
-- RapidJSON found. Headers: ./include/SlicerSALT-4.9
-- Trying to find DCMTK expecting DCMTKConfig.cmake
-- Trying to find DCMTK expecting DCMTKConfig.cmake - ok
-- Configuring ShapeRegressionExtension with Qt 5.11.1 (using modules: Core, Widgets, Multimedia, Network, OpenGL, PrintSupport, UiTools, Xml, XmlPatterns, Svg, Sql, WebEngine, WebEngineWidgets, WebChannel, )
-- Setting QT_PLUGINS_DIR: /usr/plugins
-- Setting QT_BINARY_DIR: /usr/bin
-- Checking EXTENSION_NAME variable
-- Checking EXTENSION_NAME variable - ShapeRegressionExtension
-- Adding ConfigureAdditionalLauncherSettings target
-- Adding ConfigureAdditionalLauncherSettings target - yes (because configuring ShapeRegressionExtension-build)
-- Setting EXTENSION_SOURCE_DIR ................: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension
-- Setting EXTENSION_SUPERBUILD_BINARY_DIR .....: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting MIDAS_PACKAGE_URL ...................: http://slicer.kitware.com/midas3
-- Setting MIDAS_PACKAGE_EMAIL .................: OBFUSCATED
-- Setting MIDAS_PACKAGE_API_KEY ...............: OBFUSCATED
-- Setting EXTENSION_SVNUSERNAME ...............: NOT DEFINED
-- Setting EXTENSION_SVNPASSWORD ...............: NOT DEFINED
-- Setting EXTENSION_DEPENDS ...................: Sequences
-- Setting EXTENSION_BUILD_SUBDIRECTORY ........: ShapeRegressionExtension-build
-- Setting EXTENSION_HOMEPAGE ..................:
-- Setting EXTENSION_CONTRIBUTORS ..............: Laura Pascal (Kitware Inc.), Beatriz Paniagua (Kitware Inc.), James Fishb [...]
-- Setting EXTENSION_CATEGORY ..................: Shape Regression
-- Setting EXTENSION_ICONURL ...................:
-- Setting EXTENSION_DESCRIPTION ...............: Computation and visualization of time-regressed shapes in a collection of [...]
-- Setting EXTENSION_SCREENSHOTURLS ............:
-- Setting EXTENSION_ENABLED ...................: 1
-- Setting EXTENSION_STATUS ....................: Beta
-- Configuring Scripted module: RegressionVisualization
-- Extension description has been written to: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build/ShapeRegressionExtension-build/ShapeRegressionExtension.s4ext
-- Checking if extension type is SuperBuild
-- Checking if extension type is SuperBuild - true
-- Setting 'CTEST_MODEL' variable with default value 'Experimental'
-- Setting 'SLICER_EXTENSION_MANAGER_CLIENT_EXECUTABLE' variable with default value 'SLICER_EXTENSION_MANAGER_CLIENT_EXECUTABLE-NOTDEFINED'
-- Setting 'SLICER_EXTENSION_MANAGER_URL' variable with default value 'SLICER_EXTENSION_MANAGER_URL-NOTDEFINED'
-- Setting 'SLICER_EXTENSION_MANAGER_API_KEY' variable with default value 'OBFUSCATED'
-- Configuring done
-- Generating done
-- Build files have been written to: Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build/ShapeRegressionExtension-build
[13/16] Performing build step for 'ShapeRegressionExtension'
ninja: error: build.ninja:962: multiple rules generate lib/SlicerSALT-4.9/qt-scripted-modules/Resources/Icons/ShapeRegressionExtension.png [-w dupbuild=err]

FAILED: ShapeRegressionExtension-prefix/src/ShapeRegressionExtension-stamp/ShapeRegressionExtension-build
cd Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build/ShapeRegressionExtension-build && /usr/bin/cmake --build .
ninja: build stopped: subcommand failed.
FAILED: ShapeRegressionExtension-prefix/src/ShapeRegressionExtension-stamp/ShapeRegressionExtension-build
cd Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-build && /usr/bin/cmake --build . && /usr/bin/cmake -E touch Software/Slicer/Shape/build-experimental/ShapeRegressionExtension-prefix/src/ShapeRegressionExtension-stamp/ShapeRegressionExtension-build
ninja: build stopped: subcommand failed.

Add shortcuts to module bar

We need to add shortcuts to module bar in the SlicerSALT program.
screen shot 2017-04-05 at 8 51 55 am

The things we should not add are crossed out in the snapshot above.

Add hooks to surface toolbox

Enable either surface toolbox, or create modules for doing surface processing.

This would be for things like: surface decimation, surface normal generation, etc.

About requiring LAPACK

Packaging LAPACK is a pain in windows, mainly because it requires a fortran compiler, which is only provided by MinGW or the intel compiler. Our best bet IMHO would be to use already compiled libraries and distribute them, however this is not recommended in general for testing, reproducibility, and security. If we go this way, we should create a recipe to create those binaries by our own first.

Even if we get lapack distributed, it will come with a generalistic, non-optimized blas library. There are commercial optimized blas libraries (AMD, intel) and open-blas. We should let the user link to these optimized libraries if they have any installed.
Other option is CLAPACK, which is an abandoned project using f2c in the fortran files to get c files. This is not optimized, nor getting bug updates. But it does not require a fortran compiler. I have tried to f2c in the modern codebase of lapack and it fails. SPHARM-PDM uses clapack, but... only once for solving a linear system, it can be workarounded.

Then I thought, if we are not providing a fast lapack, do we need lapack?
I started exploring in what SALT modules we are using lapack or clapack, and these are the results of my ongoing investigation:

Thanks @vicory @bpaniagua @jcfr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.