Because we are not sure which version of mincblur is run, we can run into the hardcoded outputfile limit. Here, a check is added to the mincblur command. If the output file has more than 264 characters (the max allowed with the additional _blur.mnc or _dxyz.mnc) we exit and tell the user to shorten filenames. This fixes #123
* adding in the bootstrap option: use the first input file to the pipeline as the target for the 6 parameter stage
* created a function to deal with the (currently) three possible target options, so this can be shared between LSQ6.py and MBM.py
* fixed some issues in the code where the assumption was that an initial model is being used (even though it might be bootstrap or lsq6_target)
* changed the location for the lsq6 target file (pipelinename_bootstrap_file or pipelinename_target_file)
* the function LSQ6NUCInorm assumed that when files were non uniformity corrected, the intensities would also be normalized. In pratice this meant that the non uniformity correction was always performed in native space, but if no intensity normalization was specified, these files would not be resampled to the LSQ6 space. This is fixed now.
* also, made changes to the NonUniformityCorrection class. It was not possible to resample the files to LSQ6 space if no initial model was specified. However, if you have a targetfile for the LSQ6 stage, it's quite easy to figure out what transformation to use. So now the target file that was used for the LSQ6 stage is passed along in order to get the correct 6 parameter transformation.
* made changes to the IntensityNormalization class. It was not possible to resample the files to LSQ6 space if no initial model was specified. However, if you have a targetfile for the LSQ6 stage, it's quite easy to figure out what transformation to use. So now the target file that was used for the LSQ6 stage is passed along in order to get the correct 6 parameter transformation.
Merge branch 'bootstrap-model' into develop