Input folders or files do not contain specified file extensions:

hy,
I have a doubt regarding loading '.nii' (NIFTI) files in my CNN architecture for segmentation (I am using segnet architecture). I have attached the snapshot of the error and my code. I want to load my .nii file dataset inside imds . please suggest me any option.
Untitled.png

3 commentaires

The error is occuring for the pixelLabelDatastore() call, not for the imageDataStore that you are creating.
pxds = pixelLabelDatastore(location,classNames,pixelLabelIDs) creates a PixelLabelDatastore object from image files that store pixel label data, in the folder or files specified by location. The function creates the object using pixel IDs that map image pixel label values to class names.
However, it cannot find any image files in E:\PHD\LITS17\GroundTruth\
yes my images are stored in 3D form with extension (.nii) i.e. medical file named NIFTI (Neuro imaging) file. So that i have coded with file extension in creating image datastore. Still, my input file format is not accepted by the network. please help me.
imds = imageDatastore(imageDir,'FileExtensions','.nii');
You would need to provide the FileExtensions option for the pixelLabelDatastore call. You will need to provide a ReadFcn property. You will probably also need a ReadFcn property for the imageDataStore .

Connectez-vous pour commenter.

 Réponse acceptée

Ajay Pattassery
Ajay Pattassery le 4 Nov 2019
Modifié(e) : Ajay Pattassery le 4 Nov 2019
Here if you do not define the ReadFcn explicitly, the default function used is imread() which is not supported for .nii extension.
Hence add ReadFcn as suggested by Walter Roberson.
pxds = pixelLabelDatastore(labelDir,classNames,labelIds,'FileExtensions','.nii','ReadFcn',sampleReadFcn);
imds = imageDatastore(imageDir,'FileExtensions','.nii','ReadFcn',sampleReadFcn);
The custom ReadFcn looks something like the following
function data = sampleReadFcn(filename)
data = niftiread(filename);
end
Refer here for more information on custom ReadFcn.
Refer niftiread for more info.

3 commentaires

Emerson Nithiyaraj
Emerson Nithiyaraj le 12 Nov 2019
Modifié(e) : Emerson Nithiyaraj le 12 Nov 2019
Thankyou so much for your help and this sampleReadFcn has cleared my error.
Please create as a new question.
pxds = pixelLabelDatastore(labelDir, classNames, labelIds, 'FileExtensions', '.nii', 'ReadFcn', @sampleReadFcn);
imds = imageDatastore(imageDir, 'FileExtensions', '.nii', 'ReadFcn', @sampleReadFcn);

Connectez-vous pour commenter.

Plus de réponses (1)

Gökay Karayegen
Gökay Karayegen le 18 Mai 2020
Modifié(e) : Gökay Karayegen le 18 Mai 2020
Hello ! I have a problem regarding pixellabel data store too. The screenshot of the error and the part of the code are enclosed above. Do you have any suggentions? I would be really glad if anyone could help me? Regars,

7 commentaires

That option is new for pixelLabelDatastore as of R2019a.
Before that, the workaround would seem to be to pass in all of the file names. For example,
dinfo = dir(fullfile(labelDir, '**', '*.nii'));
filenames = fullfile({dinfo.folder}, {dinfo.name});
pxds = pixelLabelDatastore(filenames, classnames, labelIDs, 'ReadFcn', matReader);
Thank you so much for the update. First two lines worked very well. However, I got the same error for 'ReadFcn' this time. Do you have an idea to overcome this issue. Thank you in advance for your help.
try
dinfo = dir(fullfile(labelDir, '**', '*.nii'));
filenames = fullfile({dinfo.folder}, {dinfo.name});
pxds = pixelLabelDatastore(filenames, classnames, labelIDs);
pxsd.ReadFcn = matReader;
I am getting this error message.
My recommendation would be to upgrade MATLAB versions.
Hello again ! Finally I manage to solve the problem. However, this time I am getting an error regarding trainnetwork command. Do you have any suggestions? Thank you once again.
Error using trainNetwork (line 170)
The subscript vectors must all be of the same size.
Error in semantik_derinogrenme (line 145)
net = trainNetwork(trainingData,layers,opts);
Caused by:
Error using sub2ind (line 69)
The subscript vectors must all be of the same size.
Dear
Gökay Karayegen'
My research is same to you. I do not solve error_message PNG. Please help me.

Connectez-vous pour commenter.

Catégories

Produits

Version

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by