acil-bwh / chestimagingplatform Goto Github PK
View Code? Open in Web Editor NEWChest Imaging Platform (CIP)
License: Other
Chest Imaging Platform (CIP)
License: Other
VTK_USE_BOOST has been removed in VTK6 and has been replaced by:
The TensorFlow library was compiled to use AVX instructions, but these aren't available on your machine.
$ python /ChestImagingPlatform/cip_python/dcnn/projects/lung_segmenter/lung_segmenter_dcnn.py --i /tmp/${cid}_resampled.nrrd --t combined --o /tmp/${cid}_partialLungLabelMap_resampled.nrrd
2023-10-04 18:53:33.551479: F tensorflow/core/platform/cpu_feature_guard.cc:37] The TensorFlow library was compiled to use AVX instructions, but these aren't available on your machine.
qemu: uncaught target signal 6 (Aborted) - core dumped
Aborted
Maybe related tickets:
tensorflow/tensorflow#52845
tensorflow/tensorflow#52972
tensorflow/tensorflow#24548
%run airway_particles.py -i /Users/jross/Downloads/ChestImagingPlatform/Testing/Data/Input/airway.nrrd -o /Users/jross/tmp/tmp.vtk -t /Users/jross/tmp/foo/
Produces the following output when gprobe is invoked:
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q totalcurv -v 0 -o /Users/jross/tmp/foo/totalcurv.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q meancurv -v 0 -o /Users/jross/tmp/foo/meancurv.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hess -v 0 -o /Users/jross/tmp/foo/hess.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q val -v 0 -o /Users/jross/tmp/foo/val.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hf -v 0 -o /Users/jross/tmp/foo/hf.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q flowlinecurv -v 0 -o /Users/jross/tmp/foo/flowlinecurv.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q 2dd -v 0 -o /Users/jross/tmp/foo/2dd.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q lapl -v 0 -o /Users/jross/tmp/foo/lapl.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q curvdir2 -v 0 -o /Users/jross/tmp/foo/curvdir2.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q curvdir1 -v 0 -o /Users/jross/tmp/foo/curvdir1.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q gausscurv -v 0 -o /Users/jross/tmp/foo/gausscurv.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q heval0 -v 0 -o /Users/jross/tmp/foo/heval0.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q heval1 -v 0 -o /Users/jross/tmp/foo/heval1.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q heval2 -v 0 -o /Users/jross/tmp/foo/heval2.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q kappa1 -v 0 -o /Users/jross/tmp/foo/kappa1.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q kappa2 -v 0 -o /Users/jross/tmp/foo/kappa2.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q gmag -v 0 -o /Users/jross/tmp/foo/gmag.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hmode -v 0 -o /Users/jross/tmp/foo/hmode.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q gvec -v 0 -o /Users/jross/tmp/foo/gvec.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hevec1 -v 0 -o /Users/jross/tmp/foo/hevec1.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hevec0 -v 0 -o /Users/jross/tmp/foo/hevec0.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q hevec2 -v 0 -o /Users/jross/tmp/foo/hevec2.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q median -v 0 -o /Users/jross/tmp/foo/median.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q st -v 0 -o /Users/jross/tmp/foo/st.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
gprobe -i /Users/jross/tmp/foo/ct-deconv.nrrd -k scalar -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pi /Users/jross/tmp/foo/pass3.nrrd -q si -v 0 -o /Users/jross/tmp/foo/si.nrrd -ssn 5 -sso -ssr 0 006 -ssf /Users/jross/tmp/foo/V-%03u-005.nrrd -ssnd
gageStackBlurParmScaleSet: !!! This function is deprecated; use gageStackBlurParmSigmaSet instead !!!
finished probing
MergeParticlesDataSets takes excessively long time. Consider using vtkAppendFilter within the logic of that.
Update those tags to keep sync with the version that Slicer is issues.
It would be good if both phenotype scripts used the same input type for thechest regions/types.
In body_composition_phenotypes.py
chest_regions : array, shape ( R ), optional
chest_types : array, shape ( T ), optional
In parenchyma_phenotypes.py
chest_regions : list of strings
chest_types : list of strings
Hi developers
I was trying to build the file, however, it showed up an error message says: "cannot connect to github.com"
I figured out by looking into the build folder, for example, there is a file called: /CIPPython-prefix/tmp/CIPPython.gitclone.cmake, then open this file and find the line says: clone --no--checkout * "git://github.com/" and replace the "git://" to "https://"
(no quotation needed in the actual code)
As I am new to git and make, so I am not sure is this the git setup issue or some make files need to be update or neither.
Looking forward to hearing any comments and suggestion.
Thanks
We have decided that January 1, 2020, was the day that we sunset Python 2. That means that we will not improve it anymore after that day, even if someone finds a security problem in it. You should upgrade to Python 3 as soon as you can. - Python.org
Hello,
I am trying to run the lobe segmentation workflow from inside the container with:
python /ChestImagingPlatform/cip_python/nipype/workflows/lung_lobe_segmentation_workflow.py --in_ct /hdd_scratch3/br888855/own_nrrd_convert/test_write__20181017192209_3314255955.nrrd --out /hdd_scratch3/br888855/own_nrrd_convert/CIPlungSegWorkflow_labelmask.nrrd
The workflow throws the following error:
RuntimeError: Command:
GeneratePartialLungLabelMap --ict "/hdd_scratch3/br888855/own_nrrd_convert/test_write__20181017192209_3314255955.nrrd" --olm "/tmp/tmpQG60_7/cid_partialLungLabelMap.nrrd"
Standard output:
Clipping low CT image values...
Clipping upper CT image values...
Executing partial lung filter...
Standard error:
Exception caught segmenting lungs:
itk::ExceptionObject (0xd86be0)
Location: "unknown"
File: /ChestImagingPlatform-build/ITKv4/Modules/Core/Common/src/itkMultiThreader.cxx
Line: 399
Description: itk::ERROR: MultiThreader(0xc88700): Exception occurred during SingleMethodExecute
/ChestImagingPlatform-build/ITKv4/Modules/Segmentation/ConnectedComponents/include/itkConnectedComponentImageFilter.hxx:347:
itk::ERROR: ConnectedComponentImageFilter(0xcafe80): Number of objects greater than maximum of output pixel type
Return code: 15
Interface GeneratePartialLungLabelMap failed to run.
I think this happens because the image I am using is quite large (~1,000 slices) and the issue should be solvable by changing the output data type of itkConnectedComponentImageFilter. I am, however, not able to do this or edit the container.
Any help /advice greatly appreciated!
@hi, i encountered a problem when using imagechest[latform in my own computer, and i don't know how to fix it. when i run the file test_airway_particle.py, and it goes like this
Resetting param groups...
Building param groups...
Starting pass 1...
puller -sscp c:\users\administrator\appdata\local\temp\tmpttwliy -cbst true -vol c:\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd:scalar:0-10-6.0-o:V c:\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd:scalar:0-10-6.0-on:VSN D:\workspace\2\cip_python\particles\tests/../../../Testing/Data/Input/vessel_vesselSeedsMask.nrrd:scalar:M -nave true -v 0 -pbm 0 -bsp bleed -info h-c:V:val:0:-1 hgvec:V:gvec hhess:V:hess tan1:V:hevec1 tan2:V:hevec2 sthr:VSN:heval1:-80:-1 lthr:VSN:heval1:-100:-1 strn:VSN:heval1:0:-1 spthr:M:val:0.5:1 -enr qwell:0.7 -ens bparab:10,0.7,-0.00 -enw butter:10,0.7 -efs false -int uni -irad 1.5 -srad 1.2 -alpha 1.0 -beta 0.77 -gamma 0.37 -ppv 2 -nss 2 -jit 1 -k00 c4h -k11 c4hd -k22 c4hdd -kssr hermite -kssb ds:1,5 -pcp 6 -edpcmin 0.1 -edmin 0.0000001 -eip 0.00001 -ess 0.5 -oss 2.0 -step 1 -maxci 10 -rng 45 -bws 1.3 -o _c:\users\administrator\appdata\local\temp\tmpttwliy\pass1.nrrd -maxi 100
ERROR: error parsing "c:\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd:scalar:0-10-6.0-o:V"_
(in "c:\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd:scalar:0-10-6.0-o:V c:\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd:scalar:0-10-6.0-on:VSN D:\workspace\2\cip_python\particles\tests/../../../Testing/Data/Input/vessel_vesselSeedsMask.nrrd:scalar:M") as meetPullVol for "-vol" option:
[meet] meetPullVolParse: couldn't parse "\users\administrator\appdata\local\temp\tmpttwliy\ct-deconv.nrrd" as kind
i install the software teem successfully, and other commands work well. the file ct-deconv.nrrd generated successfully in C:\Users\Administrator\AppData\Local\Temp\tmpttwliy. i don't konw what's wrong, can you help me ?
looking forward to your reply.
Hello,
I have been trying to build CIP on my windows computer with the develop branch. I have tried different versions of cmake including 3.5.2, 3.5, 3.15, and also tried different versions of gcc such as gcc 5.4, 7.4, 8.1. But I have not been able to successfully build it. I have also tried using the ubuntu WSL with ubuntu 18.04, 16.04 also with different cmake and gcc versions. It always keeps erroring out. Please let me know what I can do to solve this. Here is the error that I get:
HEAD is now at 31dc6a08b8 BUG: Ensure VTK_PYTHON_SITE_PACKAGES_SUFFIX is set in vtkInitializeWrapPython
Submodule 'VTK-m' (https://gitlab.kitware.com/vtk/vtk-m.git) registered for path 'ThirdParty/vtkm/vtk-m'
Cloning into 'C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/vtkm/vtk-m'...
Updating files: 100% (8/8), done.
Already on 'master'
process_begin: CreateProcess(NULL, CIPPython-install\Scripts\conda install --yes -c conda-forge nipype==0.12.1, ...) failed.
make (e=2): The system cannot find the file specified.
make[2]: *** [CIPPython-prefix/src/CIPPython-stamp/CIPPython-installnipype] Error 2
make[1]: *** [CMakeFiles/CIPPython.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
In file included from C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/liblzma/common/common.h:19:0,
from C:\Users\pilht4\Desktop\CIP\ChestImagingPlatform-build\VTKv8\ThirdParty\lzma\vtklzma\src\liblzma\check\check.h:16,
from C:\Users\pilht4\Desktop\CIP\ChestImagingPlatform-build\VTKv8\ThirdParty\lzma\vtklzma\src\liblzma\check\check.c:13:
C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/common/mythread.h:138:33: error: unknown type name 'sigset_t'
mythread_sigmask(int how, const sigset_t *restrict set,
^
C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/common/mythread.h:139:3: error: unknown type name 'sigset_t'
sigset_t *restrict oset)
^
C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/common/mythread.h: In function 'mythread_create':
C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/common/mythread.h:158:2: error: unknown type name 'sigset_t'
sigset_t old;
^
C:/Users/pilht4/Desktop/CIP/ChestImagingPlatform-build/VTKv8/ThirdParty/lzma/vtklzma/src/common/mythread.h:159:2: error: unknown type name 'sigset_t'
sigset_t all;
^
make[5]: *** [ThirdParty/lzma/vtklzma/CMakeFiles/vtklzma.dir/src/liblzma/check/check.c.obj] Error 1
make[4]: *** [ThirdParty/lzma/vtklzma/CMakeFiles/vtklzma.dir/all] Error 2
make[4]: *** Waiting for unfinished jobs....
CMakeFiles\vtkglew.dir/objects.a(glew.c.obj):glew.c:(.text+0x16ea0): multiple definition of `DllMainCRTStartup'
C:/ProgramData/chocolatey/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/lib/../lib/dllcrt2.o:crtdll.c:(.text+0x3e0): first defined here
collect2.exe: error: ld returned 1 exit status
make[5]: *** [bin/libvtkglew-8.2.dll] Error 1
make[4]: *** [ThirdParty/glew/vtkglew/CMakeFiles/vtkglew.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [VTKv8-prefix/src/VTKv8-stamp/VTKv8-build] Error 2
make[1]: *** [CMakeFiles/VTKv8.dir/all] Error 2
make: *** [all] Error 2
Also attached is the cmakeOutputLog.
CMakeOutput.log
CMakeOutput.log
Please let me know if there are any solutions to this issue. Any help is appreciated. If anyone has built on windows please let me know what steps to follow. Thank you.
I'm trying to extract a partial lung label map for each of ~1600 lung CT images using GeneratePartialLungLabelMap
. The utility runs without a problem for all but about 20 subjects. For those 20 subjects, I get the following error:
$ GeneratePartialLungLabelMap --ict K0026/K0026_original_3D.nrrd -o K0026/K0026_partialLungLabelMap.nrrd
Clipping low CT image values...
Clipping upper CT image values...
Executing partial lung filter...
Exception caught segmenting lungs:
itk::ExceptionObject (0x2ccd880)
Location: "unknown"
File: /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform/build/ITKv4/Modules/Core/Common/src/itkMultiThreader.cxx
Line: 420
Description: itk::ERROR: MultiThreader(0x2ab9040): Exception occurred during SingleMethodExecute
/pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform/build/ITKv4/Modules/Segmentation/ConnectedComponents/include/itkConnectedComponentImageFilter.hxx:347:
itk::ERROR: ConnectedComponentImageFilter(0x2abd880): Number of objects greater than maximum of output pixel type
I've tried extracting the simple lung masks using GenerateSimpleLungMask
and supplementing with them, but I get the same error.
Generating the simple lung masks: GenerateSimpleLungMask -i K0026/K0026_original_3D.nrrd -o K0026/K0026_simpleLungMask.nrrd
Generating the lung label map using the simple lung mask: GeneratePartialLungLabelMap --ict K0026/K0026_original_3D.nrrd --hm K0026/K0026_simpleLungMask.nrrd -o K0026/K0026_partialLungLabelMap.nrrd
I'm using the develop branch, and one of the images I'm having problems with can be found here: (https://www.dropbox.com/s/xbrupfheng6sw2m/K0026_original_3D.nrrd?dl=0).
Any help you can offer would be greatly appreciated.
Centralize functionality under cipHelper and use the cip types defined in cipHelper.h in a consistent manner across CLIs
Create a new script to returns the dense field and/or the eigenvalues
input: dense deformation field
output: strain (eulerian, Lagrangian or infinitesimal), eigenvalues
Just run into a Region/Type hierarchy issue. The issue can be reproduced as follows
GenerateSimpleLungMask -i <CIP_SOURCE_DIR>/Testing/Data/Input/ct-64.nrrd -o /tmp/kk.nrrd
ExtractChestLabelMap -r WholeLung -i /tmp/kk.nrrd -o /tmp/kk2.nrrd
I think the issue is related to the fact that Whole Lung has two potential hierarchical groups:
Left L + Right L
Upper Third + Middle Third + Lower Third
SimpleLungMask produces the second grouping that it does not seem to be properly addressed by itkCIPExtractChestLabelMapImageFilter
NOTE: This has to be tested in the release branch. GenerateSimpleLungMask is using the new convention in the Release Branch.
When CIP is built as a part of SlicerCIP superbuild, we get the following compile error (in OS X but similar in Windows as well):
/Users/jinho/Github/SlicerCIP-build/CIP/CommandLineTools/RegisterCT/RegisterCT.cxx:765:40: error:
no viable conversion from 'SmartPointer<class
itk::MatrixOffsetTransformBase<double, 3, 3>>' to 'SmartPointer<class
itk::Rigid3DTransform<double>>'
...RigidTransformType::Pointer rigidTransform = RigidTransformType::New();
After tracing it down, it turned out that CIP superbuild uses the following compiler flag to build ITK, while Slicer superbuild does not, which CIP in SlicerCIP uses for ITK.
-DITKV3_COMPATIBILITY:BOOL=ON (defined in External_ITKv4.cmake)
This flag is used in an ITK header file (itkv4/Modules/Core/Transform/include/itkRigid3DTransform.h) as following:
#ifdef ITKV3_COMPATIBILITY
/** Run-time type information (and related methods). */
itkNewMacro(Self);
#endif
where the New() method is not included without this flag defined.
And, CIP CommandLineTools/RegisterCT.cxx uses the New() method that requires this flag (on line 765)
typename RigidTransformType::Pointer rigidTransform = RigidTransformType::New();
There may be other ways to resolve this error but a recommendation is to remove the dependency on the ITKV3_COMPATIBILITY in the CIP code (if feasible).
Some vtkPolyData filter does not produce the desire result with Particle vtk files because we are missing topology information.
We should consider adding single point vertex cells information to the particles vtk data to make it a full vtkPolyData dataset
Hi,
I installed CIP on a ubuntu 16.04 machine using cmake 3.7.2. The installation completed without any errors. Now I want to do lung segmentation on my data, for which I use the following script:
$python ~/ChestImagingPlatform/ChestImagingPlatform-build/CIP-build/cip_python/nipype/workflows/lung_lobe_segmentation_workflow.py --in_ct ~/1700_img.nrrd --out ~/test.nrrd
But this throws up an Import error:
File "~/ChestImagingPlatform/ChestImagingPlatform-build/CIP-build/cip_python/nipype/workflows/lung_lobe_segmentation_workflow.py", line 4, in <module>
import cip_python.nipype.interfaces.cip as cip
ImportError: No module named cip_python.nipype.interfaces.cip
I see the __init__.py
file in the cip_python, nipype and the interfaces folders and hence am confused about the reason for this error. Did anyone else encounter this issue?
PS: the CIP-build/bin
folder is in my system path.
vtkCIPNRRDReader provided RASToIjk. We need to get that info from ITKVtkGlue.
There is an additional problem. ITK in Slicer does not include this module. We might need to either reach an agreement or drop this option to keep compatibility with Slicer.
Create a new CLI script to resampling an image with or without volume compensation.
input: img_ref, img_mov, t list, use_volume_compensation
output: warp_img
Hi, I'm trying to install the CIP library and encountered the following errors. I've followed the github wiki and downloaded the develop branch. The problems are:
UPDATE: The first error only raises when I try to build on more than 2 cores (e.g. make -j 8 ). The second error persists.
It seems to be missing the itkMultiThreaderBase.h file:
[ 53%] Linking CXX executable ../../bin/ConvertDicom
In file included from /hdd_scratch3/br888855/ChestImagingPlatform/CommandLineTools/ExampleCLI/Testing/ExampleCLITest.cxx:1:0:
/hdd_scratch3/br888855/ChestImagingPlatform/CommandLineTools/Testing/itkTestMain.h:41:10: fatal error: itkMultiThreaderBase.h: No such file or directory
#include "itkMultiThreaderBase.h"
^~~~~~~~~~~~~~~~~~~~~~~~
It seems to be trying to use a C compiler to install C++ code:
[ 54%] Built target ConvertDicom
running build_ext
skipping '/hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.cpp' Cython extension (up-to-date)
building 'pygco' extension
/usr/bin/cc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/hdd_scratch3/br888855/ChestImagingPlatform/Utilities/GraphCutsOptimization -I/hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/lib/python2.7/site-packages/numpy/core/include -I/hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/include/python2.7 -c /hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.cpp -o build/temp.linux-x86_64-2.7/hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.o
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++ [enabled by default]
In file included from /hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/include/python2.7/Python.h:19:0,
from /hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.cpp:4:
/usr/include/limits.h:124:26: error: no include path in which to search for limits.h
^
In file included from /hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.cpp:4:0:
/hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/include/python2.7/Python.h:22:2: error: #error "Something's broken. UCHAR_MAX should be defined in limits.h."
#error "Something's broken. UCHAR_MAX should be defined in limits.h."
^
/hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/include/python2.7/Python.h:26:2: error: #error "Python's source code assumes C's unsigned char is an 8-bit type."
#error "Python's source code assumes C's unsigned char is an 8-bit type."
^
In file included from /hdd_scratch3/br888855/ChestImagingPlatform-build/CIPPython-install/include/python2.7/Python.h:33:0,
from /hdd_scratch3/br888855/ChestImagingPlatform/cip_python/utils/gco_python/gco_python.cpp:4:
/usr/include/stdio.h:33:21: fatal error: stddef.h: No such file or directory
^
compilation terminated.
error: command '/usr/bin/cc' failed with exit status 1
make[5]: *** [cip_python/CMakeFiles/CIP_PYTHON] Error 1
make[4]: *** [cip_python/CMakeFiles/CIP_PYTHON.dir/all] Error 2
Any help greatly appreciated, thanks!
I tried to use GitHub code for my purposes and after downloading it I wated to create a buld.
I used the command line cmake --build ../ChestImagingPlatform-build --target ALL_BUILD --config Release -j 2
During creating I had a problem.
-- [download 100% complete]
-- verifying file...
file='J:/CIP/ChestImagingPlatform-build/Boost-prefix/src/boost_1_72_0.tar.gz'
-- Downloading... done
-- extracting...
src='J:/CIP/ChestImagingPlatform-build/Boost-prefix/src/boost_1_72_0.tar.gz'
dst='J:/CIP/ChestImagingPlatform-build/Boost'
-- extracting... [tar xfz]
Already on 'master'
Your branch is up to date with 'origin/master'.
Performing update step for 'CIPPython'
No patch step for 'CIPPython'
No configure step for 'CIPPython'
No build step for 'CIPPython'
Performing install step for 'CIPPython'
J:\CIP\ChestImagingPlatform-build\CIPPython-install already exists. Miniconda will not be installed
Performing installnipype step for 'CIPPython'
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
No update step for 'Boost'
No patch step for 'Boost'
Performing configure step for 'Boost'
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
Building Boost.Build engine
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
Generating Boost.Build configuration in project-config.jam for msvc...
Bootstrapping is done. To build, run:
.\b2
To adjust configuration, edit 'project-config.jam'.
Further information:
- Command line help:
.\b2 --help
- Getting started guide:
http://boost.org/more/getting_started/windows.html
- Boost.Build documentation:
http://www.boost.org/build/
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
╨б╨╕╤Б╤В╨╡╨╝╨╡ ╨╜╨╡ ╤Г╨┤╨░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╨┐╤Г╤В╤М.
CUSTOMBUILD : error : wrong library name 'signals' in the --without- option. [J:\CIP\ChestImagingPlatform-build\Boost.vcxproj]
Performing build step for 'Boost'
Usage
cmake [options] <path-to-source>
cmake [options] <path-to-existing-build>
cmake [options] -S <path-to-source> -B <path-to-build>
Specify a source directory to (re-)generate a build system for it in the
current working directory. Specify an existing build directory to
re-generate its build system.
Run 'cmake --help' for more information.
No install step for 'Boost'
Completed 'Boost'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(238,5): error MSB8066: пользовательская сборка для "J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-mkdir.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-download.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-update.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-patch.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-configure.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-build.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\150e3443956cd5eaedc81639f599cd18\Boost-install.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\ed2817e5f00d6cf49f637c94c942c5a1\Boost-complete.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\87db2e8d9fba28eceb454c94404c6981\Boost.rule" завершила работу с кодом -1. [J:\CIP\ChestImagingPlatform-build\Boost.vcxproj]
Creating directories for 'zlib'
Performing download step (git clone) for 'zlib'
Cloning into 'zlib'...
Note: switching to '66a753054b356da85e1838a081aa94287226823e'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at 66a7530 Add option ZLIB_MANGLE_PREFIX
Performing update step for 'zlib'
No patch step for 'zlib'
Performing configure step for 'zlib'
loading initial cache file J:/CIP/ChestImagingPlatform-build/zlib-prefix/tmp/zlib-cache-Release.cmake
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- Selecting Windows SDK version 10.0.18362.0 to target Windows 6.1.7601.
-- The C compiler identification is MSVC 19.28.29334.0
-- The CXX compiler identification is MSVC 19.28.29334.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: J:/CIP/ChestImagingPlatform-build/zlib-build
Performing build step for 'zlib'
Microsoft (R) Build Engine версии 16.8.2+25e4d540b для .NET Framework
(C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.
Checking Build System
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve.
Building Custom Rule J:/CIP/ChestImagingPlatform-build/zlib/CMakeLists.txt
adler32.c
compress.c
crc32.c
deflate.c
gzio.c
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(131,11): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(181,24): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(226,5): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(627,11): warning C4996: '_vsnprintf': This function or variable may be unsafe. Consider using _vsnprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(1008,11): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(1009,11): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(1010,11): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
J:\CIP\ChestImagingPlatform-build\zlib\gzio.c(1001,38): warning C4996: 'strerror': This function or variable may be unsafe. Consider using strerror_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [J:\CIP\ChestImagingPlatform-build\zlib-build\zlib.vcxproj] [J:\CIP\ChestImagingPlatform-build\zlib.vcxproj]
inffast.c
inflate.c
inftrees.c
trees.c
uncompr.c
zutil.c
Создание кода...
zlib.vcxproj -> J:\CIP\ChestImagingPlatform-build\zlib-build\Release\zlib.lib
Building Custom Rule J:/CIP/ChestImagingPlatform-build/zlib/CMakeLists.txt
Performing install step for 'zlib'
Microsoft (R) Build Engine версии 16.8.2+25e4d540b для .NET Framework
(C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.
zlib.vcxproj -> J:\CIP\ChestImagingPlatform-build\zlib-build\Release\zlib.lib
-- Install configuration: "Release"
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/lib/zlib.lib
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/include/zlib.h
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/include/zconf.h
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/include/zlib_mangle.h
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/include/zlibDllConfig.h
-- Installing: J:/CIP/ChestImagingPlatform-build/zlib-install/doc/zlib-1.2.3/Copyright.txt
Completed 'zlib'
Building Custom Rule J:/CIP/ChestImagingPlatform/CMakeLists.txt
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve.
Building graph of deps: 0%| | 0/5 [00:00<?, ?it/s]
Examining @/win-64::__win==0=0: 0%| | 0/5 [00:00<?, ?it/s]
Examining @/win-64::__archspec==1=x86_64: 20%|## | 1/5 [00:00<?, ?it/s]
Examining python=3.8: 40%|#### | 2/5 [00:00<00:00, 2000.14it/s]
Examining @/win-64::__cuda==11.0=0: 60%|###### | 3/5 [00:00<00:00, 7.16it/s]
Examining @/win-64::__cuda==11.0=0: 80%|######## | 4/5 [00:00<00:00, 9.55it/s]
Examining nipype==0.12.1: 80%|######## | 4/5 [00:00<00:00, 9.55it/s]
Determining conflicts: 0%| | 0/5 [00:00<?, ?it/s]
Examining conflict for nipype python: 0%| | 0/5 [00:00<?, ?it/s]
Solving environment: ...working...
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort.
failed
UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:
Specifications:
- nipype==0.12.1 -> python[version='2.7.*|3.5.*|3.6.*|3.4.*']
Your python: python=3.8
If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(238,5): error MSB8066: пользовательская сборка для "J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-mkdir.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-download.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-update.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-patch.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-configure.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-build.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-install.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installnipype.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installnetworkx.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installscikit-image.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installpynrrd.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installpydicom.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installnibabel.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installnumpy.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installcython.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installscipy.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installvtk.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installpandas.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installnose.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installsphinx.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installsimpleitk.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installxml.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installscikit-learn.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installgitpython.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\05b38453cfc907ff0e9c8d93f54e76b3\CIPPython-installpytables.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\ed2817e5f00d6cf49f637c94c942c5a1\CIPPython-complete.rule;J:\CIP\ChestImagingPlatform-build\CMakeFiles\87db2e8d9fba28eceb454c94404c6981\CIPPython.rule" завершила работу с кодом 1. [J:\CIP\ChestImagingPlatform-build\CIPPython.vcxproj]
It looks like the code reqiers another lower python version. I have python 3.8.
After downgrading to the required version (i tried python 2.7 and python 3.6) the code asks for upper version in another line (3.7 or 3.8 and even 3.9). The error looks the same as above.
I tried to change conda version to 4.6.12 (Currently I am using Anaconda Navigator of 07.20).
I used the code from Develop branch. All these steps didn't succeed.
At that point I am stuck. Maybe I missed any dependencies or prerequisites (I used everuthing that was stated at GitHub lists of dependencies and prerequisites)?
Maybe anaconda Navigator is a wrong choice?
Hi,
I am trying to use the develop version to compute the lung partial volume mask. When I use lung_lobe_segmentation_workflow.py
, it first complained that the cip
(and a few other things) were not defined. I noticed that a few lines were commented out in the code. Is there any reason for that?
It seems it has issues with gprob
. I added the teem-build/bin
and CIP-build/bin
to the PATH
. Am I missing something?
Thanks,
170206-14:42:47,85 workflow INFO:
['check', 'execution', 'logging']
170206-14:42:47,115 workflow INFO:
Running serially.
170206-14:42:47,116 workflow INFO:
Executing node generate_partial_lung_label_map in dir: /tmp/tmp1JwoPq/LungLobeSegmentationWorkflow/generate_partial_lung_label_map
170206-14:42:47,124 workflow INFO:
Running: GeneratePartialLungLabelMap --ict /home/batmangh/MyPylon2Space/LUNA16/noduleSegmentation/resample_imgs/resample_simpleMask/subset1/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz --olm /tmp/tmpMmsd0b/cid_partialLungLabelMap.nrrd
170206-14:42:48,444 interface INFO:
stdout 2017-02-06T14:42:48.444537:Clipping low CT image values...
170206-14:42:48,445 interface INFO:
stdout 2017-02-06T14:42:48.444537:Clipping upper CT image values...
170206-14:42:48,445 interface INFO:
stdout 2017-02-06T14:42:48.444537:Executing partial lung filter...
170206-14:43:06,901 interface INFO:
stdout 2017-02-06T14:43:06.900896:Writing lung mask image...
170206-14:43:07,402 interface INFO:
stdout 2017-02-06T14:43:07.402132:DONE.
170206-14:43:07,931 workflow INFO:
Executing node fissure_particles_node in dir: /tmp/tmpuqJIBf/LungLobeSegmentationWorkflow/fissure_particles_node
unu 3op: error parsing "/home/batmangh/MyPylon2Space/LUNA16/noduleSegmentation/resample_imgs/resample_simpleMask/subset1/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz" as nrrd/value for <in2> option:
[nrrd] nrrdLoad: trouble reading "/home/batmangh/MyPylon2Space/LUNA16/noduleSegmentation/resample_imgs/resample_simpleMask/subset1/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz"
[nrrd] nrrdRead: trouble
[nrrd] _nrrdRead: couldn't parse "e0;'@ c" as magic or beginning of any recognized format
Usage: unu 3op <operator> <in1> <in2> <in3> [-t,--type <type>] \
[-w,--which <arg>] [-o,--output <nout>]
<operator> = Ternary operator. Possibilities include:
��o "+", "x": sum or product of three values
��o "min", "max": minimum, maximum
��o "min_sm": smoothed minimum function; min_sm(x, w, M) is like
min(x,M) but for x > M-w (with w > 0) there is a smooth
transition from x to asymptotic to M
��o "max_sm": smoothed maximum function; max_sm(M, w, x) is like
max(M,x) but for x < m+w (with w > m) there is a smooth
transition from x to asymptotic to m
��o "lt_sm": 1st less than 3rd, smoothed by 2nd
��o "gt_sm": 1st greater than 3rd, smoothed by 2nd
��o "clamp": 2nd value is clamped to range between the 1st and
the 3rd
��o "ifelse": if 1st value non-zero, then 2nd value, else 3rd
value
��o "lerp": linear interpolation between the 2nd and 3rd values,
as the 1st value varies between 0.0 and 1.0, respectively
��o "exists": if the 1st value exists, use the 2nd value,
otherwise use the 3rd
��o "in_op": 1 iff 2nd value is > 1st and < 3rd, 0 otherwise
��o "in_cl": 1 iff 2nd value is >= 1st and <= 3rd, 0 otherwise
��o "gauss": evaluate (at 1st value) Gaussian with mean=2nd and
stdv=3rd value
��o "rician": evaluate (at 1st value) Rician with mean=2nd and
stdv=3rd value
<in1> = First input. Can be a single value or a nrrd.
<in2> = Second input. Can be a single value or a nrrd.
<in3> = Third input. Can be a single value or a nrrd.
-t <type> , --type <type> = type to convert all nrrd inputs to, prior to
doing operation. This also determines output type. By default
(not using this option), the types of the input nrrds are left
unchanged.
-w <arg> , --which <arg> = Which argument (0, 1, or 2) should be used to
determine the shape of the output nrrd. By default (not using
this option), the first non-constant argument is used. (int);
default: "-1"
-o <nout> , --output <nout> = output nrrd (string); default: "-"
unu resample: error parsing "-" as nrrd for -i,--input option:
[nrrd] nrrdLoad: trouble reading "-"
[nrrd] nrrdRead: trouble
[nrrd] _nrrdRead: immediately hit EOF
Usage: unu resample [-old] -s,--size <sz0 ...> [-off,--offset [<off0 ...>]] \
[-min,--minimum [<min0 ...>]] [-max,--maximum [<max0 ...>]] \
[-k,--kernel <kern>] [-nrn] [-ne,--nonexistent <behavior>] \
[-b,--boundary <behavior>] [-v,--value <value>] [-t,--type <type>] \
[-cheap] [-c,--center <center>] [-co,--center-override] [-verbose <v>] \
[-i,--input <nin>] [-o,--output <nout>]
-old = instead of using the new nrrdResampleContext
implementation, use the old nrrdSpatialResample
implementation
-s <sz0 ...> , --size <sz0 ...> = For each axis, information about how
many samples in output:
��o "=": leave this axis completely untouched: no
resampling whatsoever
��o "x<float>": multiply the number of input samples by
<float>, and round to the nearest integer, to get the
number of output samples. Use "x1" to resample the axis
but leave the number of samples unchanged
��o "/<float>": divide number of samples by <float>
��o "+=<uint>", "-=<uint>": add <uint> to or subtract
<uint> from number input samples to get number output
samples
��o "<uint>": exact number of output samples
��o "a": resample this axis to whatever number of samples
preserves the aspect ratio of other resampled axes.
Currently needs to be used on all but one of the resampled
axes, if at all.
(1 or more sampling specifications)
-off [<off0 ...>] , --offset [<off0 ...>] = For each axis, an offset or shift
to the position (in index space) of the lower end of the
sampling domain. Either -off can be used, or -min and -max
together, or none of these (so that, by default, the full
domain of the axis is resampled). (0 or more doubles);
default: ""
-min [<min0 ...>] , --minimum [<min0 ...>] = For each axis, the lower end (in
index space) of the domain of the resampling. Either -off
can be used, or -min and -max together, or none of these
(so that, by default, the full domain of the axis is
resampled). (0 or more doubles); default: ""
-max [<max0 ...>] , --maximum [<max0 ...>] = For each axis, the upper end (in
index space) of the domain of the resampling. Either -off
can be used, or -min and -max together, or none of these,
so that (by default), the full domain of the axis is
resampled. (0 or more doubles); default: ""
-k <kern> , --kernel <kern> = The kernel to use for resampling.
Kernels logically live in the input index space for
upsampling, and in the output index space for
downsampling. Possibilities include:
��o "box": nearest neighbor interpolation on upsampling,
and uniform averaging on downsampling
��o "cheap": nearest neighbor interpolation for
upsampling, and non-blurring sub-sampling (pick subset of
input samples) on downsampling
��o "tent": linear interpolation
��o "cubic:B,C": Mitchell/Netravali BC-family of cubics:
"cubic:1,0": B-spline; maximal blurring
"cubic:0,0.5": Catmull-Rom; good interpolating kernel
��o "c4h": 6-sample-support, C^4 continuous, accurate
��o "c4hai": discrete pre-filter to make c4h interpolate
��o "bspl3", "bspl5", "bspl7": cubic (same as cubic:1,0),
quintic, and 7th order B-spline
��o "bspl3ai", "bspl5ai", "bspl7ai": discrete pre-filters
to make bspl3, bspl5, bspl7 interpolate
��o "hann:R": Hann (cosine bell) windowed sinc, radius R
��o "black:R": Blackman windowed sinc, radius R
��o "gauss:S,C": Gaussian blurring, with standard
deviation S and cut-off at C standard deviations
��o "dgauss:S,C": Lindeberg's discrete Gaussian.
default: "cubic:0,0.5"
-nrn = do NOT do per-pass kernel weight renormalization. Doing
the renormalization is not a performance hit (hence is
enabled by default), and the renormalization is sometimes
needed to avoid "grating" on non-integral down-sampling.
Disabling the renormalization is needed for correct
results with artificially narrow kernels.
-ne <behavior> , --nonexistent <behavior> = When resampling floating-point
values, how to handle non-existent values within kernel
support:
��o "noop": do nothing; let them pollute result
��o "renorm": ignore them and renormalize weights of
existent values
��o "wght": ignore them and simply use weights of
existent values
default: "noop"
-b <behavior> , --boundary <behavior> = How to handle samples beyond the
input bounds:
��o "pad": use some specified value
��o "bleed": extend border values outward
��o "mirror": repeated reflections
��o "wrap": wrap-around to other side
default: "bleed"
-v <value> , --value <value> = for "pad" boundary behavior, pad with
this value (double); default: "0.0"
-t <type> , --type <type> = type to save OUTPUT as. By default (not
using this option), the output type is the same as the
input type; default: "default"
-cheap = [DEPRECATED: the "-k cheap" option is the new (and more
reliable) way to access this functionality. "-cheap" is
only here for legacy use in combination with "-old".]
When downsampling (reducing number of samples), don't try
to do correct filtering by scaling kernel to match new
(stretched) index space; keep it in old index space. When
used in conjunction with "-k box", this can implement
subsampling which chooses every Nth value.
-c <center> , --center <center> = (not available with "-old") default
centering of axes when input nrrd axes don't have a known
centering: "cell" or "node" ; default: "cell"
-co , --center-override = (not available with "-old") centering
info specified via "-c" should *over-ride* known
centering, rather than simply be used when centering is
unknown.
-verbose <v> = (not available with "-old") verbosity level (int);
default: "0"
-i <nin> , --input <nin> = input nrrd; default: "-"
-o <nout> , --output <nout> = output nrrd (string); default: "-"
unu resample: error parsing "/home/batmangh/MyPylon2Space/LUNA16/noduleSegmentation/resample_imgs/resample_simpleMask/subset1/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz" as nrrd for -i,--input option:
[nrrd] nrrdLoad: trouble reading "/home/batmangh/MyPylon2Space/LUNA16/noduleSegmentation/resample_imgs/resample_simpleMask/subset1/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz"
[nrrd] nrrdRead: trouble
[nrrd] _nrrdRead: couldn't parse "e0;'@ c" as magic or beginning of any recognized format
Usage: unu resample [-old] -s,--size <sz0 ...> [-off,--offset [<off0 ...>]] \
[-min,--minimum [<min0 ...>]] [-max,--maximum [<max0 ...>]] \
[-k,--kernel <kern>] [-nrn] [-ne,--nonexistent <behavior>] \
[-b,--boundary <behavior>] [-v,--value <value>] [-t,--type <type>] \
[-cheap] [-c,--center <center>] [-co,--center-override] [-verbose <v>] \
[-i,--input <nin>] [-o,--output <nout>]
-old = instead of using the new nrrdResampleContext
implementation, use the old nrrdSpatialResample
implementation
-s <sz0 ...> , --size <sz0 ...> = For each axis, information about how
many samples in output:
��o "=": leave this axis completely untouched: no
resampling whatsoever
��o "x<float>": multiply the number of input samples by
<float>, and round to the nearest integer, to get the
number of output samples. Use "x1" to resample the axis
but leave the number of samples unchanged
��o "/<float>": divide number of samples by <float>
��o "+=<uint>", "-=<uint>": add <uint> to or subtract
<uint> from number input samples to get number output
samples
��o "<uint>": exact number of output samples
��o "a": resample this axis to whatever number of samples
preserves the aspect ratio of other resampled axes.
Currently needs to be used on all but one of the resampled
axes, if at all.
(1 or more sampling specifications)
-off [<off0 ...>] , --offset [<off0 ...>] = For each axis, an offset or shift
to the position (in index space) of the lower end of the
sampling domain. Either -off can be used, or -min and -max
together, or none of these (so that, by default, the full
domain of the axis is resampled). (0 or more doubles);
default: ""
-min [<min0 ...>] , --minimum [<min0 ...>] = For each axis, the lower end (in
index space) of the domain of the resampling. Either -off
can be used, or -min and -max together, or none of these
(so that, by default, the full domain of the axis is
resampled). (0 or more doubles); default: ""
-max [<max0 ...>] , --maximum [<max0 ...>] = For each axis, the upper end (in
index space) of the domain of the resampling. Either -off
can be used, or -min and -max together, or none of these,
so that (by default), the full domain of the axis is
resampled. (0 or more doubles); default: ""
-k <kern> , --kernel <kern> = The kernel to use for resampling.
Kernels logically live in the input index space for
upsampling, and in the output index space for
downsampling. Possibilities include:
��o "box": nearest neighbor interpolation on upsampling,
and uniform averaging on downsampling
��o "cheap": nearest neighbor interpolation for
upsampling, and non-blurring sub-sampling (pick subset of
input samples) on downsampling
��o "tent": linear interpolation
��o "cubic:B,C": Mitchell/Netravali BC-family of cubics:
"cubic:1,0": B-spline; maximal blurring
"cubic:0,0.5": Catmull-Rom; good interpolating kernel
��o "c4h": 6-sample-support, C^4 continuous, accurate
��o "c4hai": discrete pre-filter to make c4h interpolate
��o "bspl3", "bspl5", "bspl7": cubic (same as cubic:1,0),
quintic, and 7th order B-spline
��o "bspl3ai", "bspl5ai", "bspl7ai": discrete pre-filters
to make bspl3, bspl5, bspl7 interpolate
��o "hann:R": Hann (cosine bell) windowed sinc, radius R
��o "black:R": Blackman windowed sinc, radius R
��o "gauss:S,C": Gaussian blurring, with standard
deviation S and cut-off at C standard deviations
��o "dgauss:S,C": Lindeberg's discrete Gaussian.
default: "cubic:0,0.5"
-nrn = do NOT do per-pass kernel weight renormalization. Doing
the renormalization is not a performance hit (hence is
enabled by default), and the renormalization is sometimes
needed to avoid "grating" on non-integral down-sampling.
Disabling the renormalization is needed for correct
results with artificially narrow kernels.
-ne <behavior> , --nonexistent <behavior> = When resampling floating-point
values, how to handle non-existent values within kernel
support:
��o "noop": do nothing; let them pollute result
��o "renorm": ignore them and renormalize weights of
existent values
��o "wght": ignore them and simply use weights of
existent values
default: "noop"
-b <behavior> , --boundary <behavior> = How to handle samples beyond the
input bounds:
��o "pad": use some specified value
��o "bleed": extend border values outward
��o "mirror": repeated reflections
��o "wrap": wrap-around to other side
default: "bleed"
-v <value> , --value <value> = for "pad" boundary behavior, pad with
this value (double); default: "0.0"
-t <type> , --type <type> = type to save OUTPUT as. By default (not
using this option), the output type is the same as the
input type; default: "default"
-cheap = [DEPRECATED: the "-k cheap" option is the new (and more
reliable) way to access this functionality. "-cheap" is
only here for legacy use in combination with "-old".]
When downsampling (reducing number of samples), don't try
to do correct filtering by scaling kernel to match new
(stretched) index space; keep it in old index space. When
used in conjunction with "-k box", this can implement
subsampling which chooses every Nth value.
-c <center> , --center <center> = (not available with "-old") default
centering of axes when input nrrd axes don't have a known
centering: "cell" or "node" ; default: "cell"
-co , --center-override = (not available with "-old") centering
info specified via "-c" should *over-ride* known
centering, rather than simply be used when centering is
unknown.
-verbose <v> = (not available with "-old") verbosity level (int);
default: "0"
-i <nin> , --input <nin> = input nrrd; default: "-"
-o <nout> , --output <nout> = output nrrd (string); default: "-"
puller: trouble with volumes or infos:
[meet] meetPullVolLoadMulti: trouble loading mpv[0]->nin ("V")
[meet] [nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz","rb") failed: No such file or directory
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
unu 2op: error parsing "-" as nrrd/value for <in1> option:
[nrrd] nrrdLoad: trouble reading "-"
[nrrd] nrrdRead: trouble
[nrrd] _nrrdRead: immediately hit EOF
Usage: unu 2op <operator> <in1> <in2> [-s,--seed <seed>] [-t,--type <type>] \
[-w,--which <arg>] [-o,--output <nout>]
<operator> = Binary operator. Possibilities include:
��o "+", "-", "x", "/": add, subtract, multiply, divide
��o "^": exponentiation (pow)
��o "spow": signed exponentiation: sgn(x)pow(abs(x),p)
��o "fpow": like spow but with curves flipped
��o "%": integer modulo
��o "fmod": same as fmod() in C
��o "atan2": same as atan2() in C
��o "min", "max": minimum, maximum
��o "lt", "lte", "gt", "gte": same as C's <, <=, >, <=
��o "eq", "neq": same as C's == and !=
��o "comp": -1, 0, or 1 if 1st value is less than, equal to, or
greater than 2nd value
��o "if": if 1st value is non-zero, use it, else use 2nd value
��o "exists": if 1st value exists, use it, else use 2nd value
��o "nrand": scale unit-stdv Gaussian noise by 2nd value and add
to first value
��o "rrand": sample Rician distribution with 1st value for
"true" mean, and 2nd value for sigma
<in1> = First input. Can be a single value or a nrrd.
<in2> = Second input. Can be a single value or a nrrd.
-s <seed> , --seed <seed> = seed value for RNG for nrand, so that you can
get repeatable results between runs, or, by not using this
option, the RNG seeding will be based on the current time
(string)
-t <type> , --type <type> = type to convert all INPUT nrrds to, prior to
doing operation, useful for doing, for instance, the difference
between two unsigned char nrrds. This will also determine output
type. By default (not using this option), the types of the input
nrrds are left unchanged.
-w <arg> , --which <arg> = Which argument (0 or 1) should be used to
determine the shape of the output nrrd. By default (not using
this option), the first non-constant argument is used. (int);
default: "-1"
-o <nout> , --output <nout> = output nrrd (string); default: "-"
unu inset: error parsing "-" as nrrd for -s,--subset option:
[nrrd] nrrdLoad: trouble reading "-"
[nrrd] nrrdRead: trouble
[nrrd] _nrrdRead: immediately hit EOF
Usage: unu inset -min,--minimum <pos0 ...> -s,--subset <nsub> \
[-i,--input <nin>] [-o,--output <nout>]
-min <pos0 ...> , --minimum <pos0 ...> = coordinates of where to locate
sub-volume within input nrrd.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(1 or more positions)
-s <nsub> , --subset <nsub> = sub-region nrrd. This the data to be
inset in "nin"
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
unu crop: error parsing "/tmp/tmpF_O60K/pass3.nrrd" as nrrd for -i,--input option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/pass3.nrrd","rb") failed: No such file or directory
Usage: unu crop [-min,--minimum [<pos0 ...>]] [-max,--maximum [<pos0 ...>]] \
[-b,--bounds <filename>] [-i,--input <nin>] [-o,--output <nout>]
-min [<pos0 ...>] , --minimum [<pos0 ...>] = low corner of bounding box.
��o <int> gives 0-based index
��o M, M+<int>, M-<int> give index relative to the last
sample on the axis (M == #samples-1).
(0 or more positions)
default: "0"
-max [<pos0 ...>] , --maximum [<pos0 ...>] = high corner of bounding box.
Besides the specification styles described above, there's
also:
��o m+<int> give index relative to minimum.
(0 or more positions)
default: "0"
-b <filename> , --bounds <filename> = a filename given here overrides the
-min and -max options (they don't need to be used) and
provides the cropping bounds as a 2-D array; first
scanline is for -min, second is for -max. Unfortunately
the "m" and "M" semantics (above) are currently not
supported in the bounds file.
-i <nin> , --input <nin> = input nrrd
-o <nout> , --output <nout> = output nrrd (string); default: "-"
ERROR: error parsing "/tmp/tmpF_O60K/ct-deconv.nrrd" as nrrd for "-i" option:
[nrrd] nrrdLoad: fopen("/tmp/tmpF_O60K/ct-deconv.nrrd","rb") failed: No such file or directory
Usage: gprobe -i <nin> -k <kind> [-v <verbosity>] -q <query> [-gmc <min \
gradmag>] [-ofs] [-seed <N>] [-c <bool>] [-zz <bool>] [-k00 <kern00>] \
[-k11 <kern11>] [-k22 <kern22>] [-rn] [-ssn <SS #>] [-ssr <scale \
range>] [-ssu] [-sso] [-kssb <kernel>] [-sbp <blur spec>] [-ssnd] \
[-ssnb <bias>] [-ssf <SS read/save format>] [-kssr <kernel>] [-s <sclX \
sclY sxlZ>] [-ssp <pos>] [-pg <nrrd>] [-pi <nrrd>] [-pp <pos ...>] \
[-eps <epsilon>] [-psi <p>] [-t <type>] [-o <nout>]
-i <nin> = input volume
-k <kind> = "kind" of volume ("scalar", "vector", "tensor",
or "dwi")
-v <verbosity> = verbosity level (int); default: "1"
-q <query> = the quantity (scalar, vector, or matrix) to learn
by probing (string)
-gmc <min gradmag> = For curvature-based queries, use zero when
gradient magnitude is below this (double);
default: "0.0"
-ofs = If only per-axis spacing is available, use that
to contrive full orientation info
-seed <N> = RNG seed; mostly for debugging (unsigned int);
default: "42"
-c <bool> = clamp positions as part of probing (bool);
default: "false"
-zz <bool> = enable "zeroZ" behavior in gage that partially
implements working with 3D images as if they are
2D (bool); default: "false"
-k00 <kern00> = kernel for gageKernel00; default: "tent"
-k11 <kern11> = kernel for gageKernel11; default: "cubicd:1,0"
-k22 <kern22> = kernel for gageKernel22; default: "cubicdd:1,0"
-rn = renormalize kernel weights at each new sample
location. "Accurate" kernels don't need this;
doing it always makes things go slower
-ssn <SS #> = how many scale-space samples to evaluate, or, 0
to turn-off all scale-space behavior (unsigned
int); default: "0"
-ssr <scale range> = range of scales in scale-space (2 doubles);
default: "nan nan"
-ssu = do uniform samples along sigma, and not (by
default) samples according to the effective
diffusion scale
-sso = if not using "-ssu", use pre-computed optimal
sigmas when possible
-kssb <kernel> = blurring kernel, to sample scale space;
default: "dgauss:1,5"
-sbp <blur spec> = complete specification of stack blur parms;
over-rides all previous "ss" options; default: ""
-ssnd = normalize derivatives by scale
-ssnb <bias> = bias on scale-based derivative normalization
(double); default: "0.0"
-ssf <SS read/save format> = printf-style format (including a "%u") for the
filenames from which to read pre-blurred volumes
computed for the stack, if they exist and match
the stack parameters, and where to save them if
they had to be re-computed. Leave this as empty
string to disable this. (string); default: ""
-kssr <kernel> = kernel for reconstructing from scale space
samples; default: "hermite"
-s <sclX sclY sxlZ> = scaling factor for resampling on each axis (>1.0
: supersampling); use "-ssp" (and "-psi")to
specify scale position of sampling (3 doubles);
default: "1 1 1"
-ssp <pos> = when using scale-space, scale-position at which
to probe (double); default: "0"
-pg <nrrd> = overrides "-s": 2-D nrrd which specifies origin
and direction vectors for sampling grid;
default: ""
-pi <nrrd> = overrides "-pv": probes at this list of 3-vec or
4-vec positions; default: ""
-pp <pos ...> = overrides "-pi": only sample at this specified
point (3..4 doubles); default: "nan nan nan"
-eps <epsilon> = if non-zero, and if query is a scalar, and if
using "pp" to query at a single point, then do
epsilon offset probes to calculate discrete
differences, to find the numerical gradient and
hessian (for debugging) (double); default: "0"
-psi <p> = whether the probe location specification (by any
of the four previous flags) are in index space
(bool); default: "false"
-t <type> = type of output volume (type); default: "float"
-o <nout> = output volume (string); default: "-"
170206-14:43:08,594 workflow ERROR:
['Node fissure_particles_node failed to run on host r001.pvt.bridges.psc.edu.']
170206-14:43:08,596 workflow INFO:
Saving crash info to /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/crash-20170206-144308-batmangh-fissure_particles_node-8d99b1a9-0f3e-4d91-b674-4b7fcc953c1b.pklz
170206-14:43:08,596 workflow INFO:
Traceback (most recent call last):
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 39, in run
node.run(updatehash=updatehash)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 394, in run
self._run_interface()
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 504, in _run_interface
self._result = self._run_command(execute)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 630, in _run_command
result = self._interface.run()
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1043, in run
runtime = self._run_wrapper(runtime)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1000, in _run_wrapper
runtime = self._run_interface(runtime)
File "/pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/nipype/interfaces/cip/cip_python_interfaces.py", line 56, in _run_interface
dp.execute()
File "/pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/particles/fissure_particles.py", line 129, in execute
self.save_vtk(out_particles % 3)
File "/pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/particles/chest_particles.py", line 566, in save_vtk
im=image_io.read(self._sp_in_file_name)
File "/pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/input_output/image_reader_writer.py", line 29, in read
sitk_image=sitk.ReadImage(file_name)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/SimpleITK/SimpleITK.py", line 8450, in ReadImage
return _SimpleITK.ReadImage(*args)
RuntimeError: Exception thrown in SimpleITK ReadImage: /home/blowekamp/anaconda/conda-bld/work/Code/IO/src/sitkImageReaderBase.cxx:76:
sitk::ERROR: The file "/tmp/tmpF_O60K/1.3.6.1.4.1.14519.5.2.1.6279.6001.100684836163890911914061745866resmpl1.0-1.0-1.0_lungMask.nii.gz" does not exist.
Interface fissure_particles failed to run.
170206-14:43:08,616 workflow INFO:
Executing node generate_lobe_surface_models in dir: /tmp/tmp8E5ImE/LungLobeSegmentationWorkflow/generate_lobe_surface_models
170206-14:43:08,622 workflow INFO:
Running: GenerateLobeSurfaceModels --dir /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/nipype/workflows/../../../Resources/LungLobeAtlasData/ --ilm /tmp/tmpMmsd0b/cid_partialLungLabelMap.nrrd --irlm /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/nipype/workflows/../../../Resources/LungLobeAtlasData/10002K_INSP_STD_BWH_COPD_leftLungRightLung.nrrd --olsm /tmp/tmpMmsd0b/cid_leftLungLobesShapeModel.csv --orsm /tmp/tmpMmsd0b/cid_rightLungLobesShapeModel.csv
170206-14:43:09,407 interface INFO:
stdout 2017-02-06T14:43:09.406861:Read in 100 atlas resource file pairs.
170206-14:43:09,407 interface INFO:
stdout 2017-02-06T14:43:09.406861:Reading fixed image...
170206-14:43:09,908 interface INFO:
stderr 2017-02-06T14:43:09.908129:
170206-14:43:09,908 interface INFO:
stderr 2017-02-06T14:43:09.908129:CIP Assertion Error:
170206-14:43:09,908 interface INFO:
stderr 2017-02-06T14:43:09.908129:In file: /home/batmangh/MyPylon1Space/gitSandbox/ChestImagingPlatform-dev/CommandLineTools/GenerateLobeSurfaceModels/GenerateLobeSurfaceModels.cxx
170206-14:43:09,909 interface INFO:
stderr 2017-02-06T14:43:09.908129:On line: 111
170206-14:43:09,909 interface INFO:
stderr 2017-02-06T14:43:09.908129:Aborting!
170206-14:43:10,412 workflow ERROR:
['Node generate_lobe_surface_models failed to run on host r001.pvt.bridges.psc.edu.']
170206-14:43:10,413 workflow INFO:
Saving crash info to /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/crash-20170206-144310-batmangh-generate_lobe_surface_models-c4ff63c5-f9e7-4a0c-b2ee-b0e076d25b49.pklz
170206-14:43:10,413 workflow INFO:
Traceback (most recent call last):
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 39, in run
node.run(updatehash=updatehash)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 394, in run
self._run_interface()
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 504, in _run_interface
self._result = self._run_command(execute)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 630, in _run_command
result = self._interface.run()
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1043, in run
runtime = self._run_wrapper(runtime)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1660, in _run_wrapper
runtime = self._run_interface(runtime)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1694, in _run_interface
self.raise_exception(runtime)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1618, in raise_exception
raise RuntimeError(message)
RuntimeError: Command:
GenerateLobeSurfaceModels --dir /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/nipype/workflows/../../../Resources/LungLobeAtlasData/ --ilm /tmp/tmpMmsd0b/cid_partialLungLabelMap.nrrd --irlm /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/cip_python/nipype/workflows/../../../Resources/LungLobeAtlasData/10002K_INSP_STD_BWH_COPD_leftLungRightLung.nrrd --olsm /tmp/tmpMmsd0b/cid_leftLungLobesShapeModel.csv --orsm /tmp/tmpMmsd0b/cid_rightLungLobesShapeModel.csv
Standard output:
Read in 100 atlas resource file pairs.
Reading fixed image...
Standard error:
CIP Assertion Error:
In file: /home/batmangh/MyPylon1Space/gitSandbox/ChestImagingPlatform-dev/CommandLineTools/GenerateLobeSurfaceModels/GenerateLobeSurfaceModels.cxx
On line: 111
Aborting!
Return code: -6
Interface GenerateLobeSurfaceModels failed to run.
170206-14:43:10,432 workflow INFO:
***********************************
170206-14:43:10,432 workflow ERROR:
could not run node: LungLobeSegmentationWorkflow.fissure_particles_node
170206-14:43:10,432 workflow INFO:
crashfile: /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/crash-20170206-144308-batmangh-fissure_particles_node-8d99b1a9-0f3e-4d91-b674-4b7fcc953c1b.pklz
170206-14:43:10,432 workflow ERROR:
could not run node: LungLobeSegmentationWorkflow.generate_lobe_surface_models
170206-14:43:10,432 workflow INFO:
crashfile: /pylon1/ms4s88p/batmangh/gitSandbox/ChestImagingPlatform-dev/build/CIP-build/crash-20170206-144310-batmangh-generate_lobe_surface_models-c4ff63c5-f9e7-4a0c-b2ee-b0e076d25b49.pklz
170206-14:43:10,432 workflow INFO:
***********************************
Traceback (most recent call last):
File "cip_python/nipype/workflows/lung_lobe_segmentation_workflow2.py", line 468, in <module>
wf.run()
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/engine/workflows.py", line 597, in run
runner.run(execgraph, updatehash=updatehash, config=self.config)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 57, in run
report_nodes_not_run(notrun)
File "/home/batmangh/anaconda2/lib/python2.7/site-packages/nipype/pipeline/plugins/base.py", line 95, in report_nodes_not_run
raise RuntimeError(('Workflow did not execute cleanly. '
RuntimeError: Workflow did not execute cleanly. Check log for details
Re-create nipype interfaces on release before pushing to master
Create new python CLI script to get the dense field
input: img_ref, <tx1, ... txn>
output: Dense deformation field
Some cip_python tools depends on pynrrd. We should unify IO operations with cip_python.input_output
Dear Author/Users
I would like to ask a question of how to control how many generations of the vessel the code is actually calculating. For say: how to make the code calculate more generations.
Another question is: how many generations of vessels calculated have more confidence that is 'real', rather than a sub-scale assumption? In other words, which parameters are controlling those outputs.
Thanks a lot if anyone would like to share your experiences.
Best regards
There is a problem with Windows and dllimport dllexport with all the CLI Test. Jinho is looking at this.
Hi,
This is a feature request not an issue. If possible, please add install
target to the CMakeList. It is quite useful for the python extension. Currently, I am setting up my PYTHONPATH to the cip_python
in the build folder and manually append teem-build/bin
and CIP-build/bin
tom my PATH.Not sure it is the best way. Also it seems ITKToolkit is also a requirement.
Thanks,
Kayhan
Hi All,
I need small help for the Chest Imaging Platform (CIP) installation in Linus Ubuntu & python set up and looking for the installation steps.
Basically I would like to use the “GeneratePartialLungLabelMap” function in my main python code.
I am not sure which version of CIP - need to install for my whole lung segmentation. As it has two options for download - 1) CIP Library, 2) Slicer CIP
Please advise me.
Here is a guide explaining how to transition:
https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide/Slicer#Slicer_4.9:_CMake:_Module_MIDAS_not_available
See also r17150 associated with EMSegment project for a practical example.
Hey,
Just want to ask:
Is the Chest imaging platform still activly developed ?
Thank you and best regards
rudolf
I run into an interesting exception that might highlight some underlying problem with GeneratePartialLungLabelMap exception.
The experiment is as follows. When I execute:
GeneratePartialLungLabelMap -c 026658003996_INSP_STD_L3_ECLIPSE.nhdr -o tmp.nrrd --lsr 4
Things run as expected
However, if you execute:
GeneratePartialLungLabelMap -c 026658003996_INSP_STD_L3_ECLIPSE.nhdr -o tmp.nrrd --lsr 4 --lcv -1100 --lrv 1024 --ucv 1024 --urv 1024
I get the following error:
Reading CT from file... Clipping low CT image values... Clipping upper CT image values... Executing partial lung filter... Exception caught segmenting lungs: itk::ExceptionObject (0x7f8155b00a98) Location: "unknown" File: /Users/rjosest/src/devel/ChestImagingPlatformPrivate-build/ITKv4/Modules/Core/Common/include/itkExtractImageFilter.hxx Line: 99 Description: itk::ERROR: ExtractImageFilter(0x7f8155b00080): Extraction Region not consistent with output image Writing lung mask image... Exception caught while writing lung mask: itk::ExceptionObject (0x7f8156a00a98) Location: "unknown" File: /Users/rjosest/src/devel/ChestImagingPlatformPrivate-build/ITKv4/Modules/Core/Common/include/itkExtractImageFilter.hxx Line: 99 Description: itk::ERROR: ExtractImageFilter(0x7f8156a00080): Extraction Region not consistent with output image DONE.
I built CIP with ITKv5 using standard configuration. I tried to run ComputeFeatureStrength
and I got some error about subclassing. Here is the full output
$ ComputeFeatureStrength -i lungimage.nrrd -m Frangi -f RidgeLine --std 0.700000,4.000000,7 --ssm 1 --alpha 0.63 --beta 0.51 --C 245 -o featureMap.nrrd
Reading CT from file...
0.7 4 7
Exception caught executing method
itk::ExceptionObject (0x7efec4001140)
Location: "unknown"
File: /src/CIP/ITKv5/Modules/Core/Common/include/itkImageSource.hxx
Line: 280
Description: itk::ERROR: UnaryFunctorImageFilter2(0x1468880): Subclass should override this method!!! If old behavior is desired invoke this->DynamicMultiThreadingOff(); before Update() is called. The best place is in class constructor.
Seems that this block in ComputeFeatureStrength.cxx
is causing the exception:
try
{
multiScaleFilter->Update();
}
catch (itk::ExceptionObject &excp)
{
std::cerr << "Exception caught executing method";
std::cerr << excp << std::endl;
return cip::EXITFAILURE;
}
Can anyone help me solve this issue? Thanks!
(this issue is moved here from the Slicer core bugtracker - https://issues.slicer.org/view.php?id=4333)
When perform the function of computefissurefeaturevector in chest image platform,it shows error as follows:
Exception caught reading right shape model:
CIP Exception:
Message: Problem opening file
In file: C:\D\N\S460-E-b\Chest_Imaging_Platform-build\CIP\IO\cipLobeSurfaceModelIO.cxx
On line: 94
In method: LobeSurfaceModelIO::Read()
I have searched the file C:\D\N\S460-E-b\Chest_Imaging_Platform-build\CIP\IO\cipLobeSurfaceModelIO.cxx in my computer,neither C:\D\N\S460-E-b\Chest_Imaging_Platform-build\CIP\IO\cipLobeSurfaceModelIO.cxx nor C:\D\N\S460-E-b\Chest_Imaging_Platform-build\CIP can be found.
I wonder how to solve this problem?
I uninstall the chest imaging platform,and then install again,but it still shows the same result.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.