raacampbell / matlab_elastix

MATLAB Elastix wrapper
http://www.mathworks.com/matlabcentral/fileexchange/52982-matlab-elastix
GNU Lesser General Public License v3.0
26 stars 12 forks source link

YAML failed, example wont run #14

Closed hxf750 closed 8 years ago

hxf750 commented 8 years ago

I ran the example_2D_affine_nSpatialSamples.m and it failed. This was the result: Starting registration Transform: AffineTransform MaximumNumberOfIterations: 1500 SP_alpha: 6.000000e-01 NumberOfSpatialSamples: 50 Undefined variable "yaml" or class "yaml.ReadYaml".

Error in elastixYAML2struct (line 42) yml=yaml.ReadYaml(fname);

Error in elastix_parameter_write (line 56) params=elastixYAML2struct(YAML); %Default params from a user-supplied YAML or the default YAML

Error in elastix (line 194) elastix_parameter_write(paramFname{ii},paramFile,paramstruct(ii))

Error in example_2D_affine_nSpatialSamples>runExampleLena (line 54) reg=elastix(lenaTrans,lena,[],'elastix_default.yml','paramstruct',p);

Error in example_2D_affine_nSpatialSamples (line 41) runExampleLena(lenaTrans,lena,p,ind)

I also ran the selftest report for YAML shows 'Failed, Crash' for all tests bar the read

raacampbell commented 8 years ago

Please see step three of the readme. If you have already completed this step and it still fails, then let me know.

hxf750 commented 8 years ago

I am unsure on how to do step 3. I may have to just try compiling simple elastix On 5 Jul 2016 11:46 a.m., "Rob Campbell" notifications@github.com wrote:

Please see step three of the readme https://github.com/raacampbell/matlab_elastix. If you have already completed this step and it still fails, then let me know.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/raacampbell/matlab_elastix/issues/14#issuecomment-230446391, or mute the thread https://github.com/notifications/unsubscribe/ATNXnRmhH0sQclu1ZD8ycOB0CNPb7LaTks5qSjYAgaJpZM4JE_KS .

raacampbell commented 8 years ago

This package is a MATLAB wrapper for Elastix. It's just a way of calling Elastix from within MATLAB. Whether or not you use this package you still need functional Elastix binaries on your system. Step 3 of the instructions is just the basic procedure for installing a package in MATLAB: download, unpack, add directory to path. It's the same as what you would have done to get this package working.

hxf750 commented 8 years ago

So I downloaded everything specified, I had elastix already on my computer with it in my system path. I opened it all in matlab, specified the path for yaml as specified. On 5 Jul 2016 1:09 p.m., "Rob Campbell" notifications@github.com wrote:

This package is a MATLAB wrapper for Elastix. It's just a way of calling Elastix from within MATLAB. Whether or not you use this package you still need functional Elastix binaries on your system. Step 3 of the instructions is just the basic procedure for installing a package in MATLAB: download, unpack, add directory to path. It's the same as what you would have done to get this package working.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/raacampbell/matlab_elastix/issues/14#issuecomment-230460715, or mute the thread https://github.com/notifications/unsubscribe/ATNXnZDcm6zuR1xRwijji7eI3xvwkAn5ks5qSklsgaJpZM4JE_KS .

raacampbell commented 8 years ago

The error you report indicates that it can't find the YAML reader. So either the YAML reader really isn't in the path, or there is a weird bug. If the YAML reader is in the path then the following command will return the location: which('yaml.ReadYaml') If instead it says 'yaml.ReadYaml' not found., then it's not set up correctly. If it is set up correctly then there is a bug in the Elastix-related code.