Transfer learning for 2D image using Alexnet
9 views (last 30 days)
Show older comments
Hello, I am trying to do as following video: https://www.mathworks.com/videos/transfer-learning-with-neural-networks-in-matlab-1492007175092.html
but my data in this case is 2D data, so the network responded some error.
Error using trainNetwork (line 154)
The training images are of size 227x227x1 but the input layer expects images of size 227x227x3.
I have tried to convert the image to 3D image in the file @readFunctionTrain but it does not work (see attached image).
I am not sure about the function @readFunctionTrain but it seems not allow me to do any change.
Have someone ever face this problem?
2 Comments
Accepted Answer
Mohammad Sami
on 22 Aug 2020
Edited: Mohammad Sami
on 22 Aug 2020
Another option would be for you to use the augmented image data store function. It includes both resizing and grey to RGB functionality.
if true
auimds = augmentedImageDatastore([224,224],imds,'ColorPreprocessing','gray2rgb');
end
More Answers (1)
Walter Roberson
on 19 Aug 2020
You can use a transform() of your datastore https://www.mathworks.com/help/matlab/ref/matlab.io.datastore.transform.html
Or you can use an Augmented Image Datastore, as that has an option to automatically adjust the color.
2 Comments
Mohammad Sami
on 22 Aug 2020
The transform function was introduced in R2019a. If you are unable to upgrade, the alternative would be to set a custom ReadFcn function for your imageDatastore
See Also
Categories
Find more on Image Data Workflows in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!