Как сделать аффинное преобразование для изображения nifti? - PullRequest
0 голосов
/ 08 июня 2018

Когда я использую niftiinfo для извлечения информации из изображения nifti, я получаю следующую ошибку. Возможно ли выполнить аффинное преобразование, чтобы niftiinfo работал правильно

info = niftiinfo('Subject01.nii');  

Ошибка при использовании affine3d /set.T (строка 340) Последний столбец матрицы аффинного преобразования должен состоять из нулей, за исключением одного в последней строке.

Ошибка в affine3d (строка 117) self.T = A;Ошибка в images.internal.nifti.niftiImage / getXForm (строка 506) xform = affine3d ([R нулей (3,1); T 1] ');

Ошибка в images.internal.nifti.niftiImage /simpifyStruct (строка 162) [XformName, Xform] = self.getXForm ();

Ошибка в niftiinfo (строка 50) simpleStruct = NV.simplifyStruct ();

matlab 2018b возвращает

Filemoddate: '21-Jan-2015 13:44:48'
                 Filesize: 7256302
              Description: ''
                ImageSize: [39 305 305]
          PixelDimensions: [2 1.2500 1.2500]
                 Datatype: 'int16'
             BitsPerPixel: 16
               SpaceUnits: 'Unknown'
                TimeUnits: 'None'
           AdditiveOffset: 0
    MultiplicativeScaling: 0
               TimeOffset: 0
                SliceCode: 'Unknown'
       FrequencyDimension: 0
           PhaseDimension: 0
         SpatialDimension: 0
    DisplayIntensityRange: [0 0]
            TransformName: 'Qform'
                Transform: [1×1 affine3d]
                  Qfactor: 1
                      raw: [1×1 struct]

1 Ответ

0 голосов
/ 01 февраля 2019

Niftiinfo отлично работает для меня на Matlab 2018a и 2018b, так что я готов признать, что проблема заключается в неправильно написанном файле nifti, а именно в проблеме с вашими кодами srow_ * и / или qform / sform.Если вы можете опубликовать дамп заголовка, я уверен, что это ясно проиллюстрирует проблему.

...