Transfer learning without imresize or imageDatastore
2 次查看(过去 30 天)
显示 更早的评论
For many samples of small images, it would be nice to load the data into RAM and perform transfer learning without using images on slower memory (imageDatastore). Unfortunately, if I had 50x50x1 images and had to resize to go with alexnet, I will be forced to use (50x50x1/227x227x3) ~ 1.6% of the number of samples in order to keep everything in RAM.
Does anyone know a fix? A custom layer that resizes would work, that's a lot of work though.
using 2017b
0 个评论
回答(1 个)
Shounak Mitra
2018-8-20
Hi Michael,
Thanks for your question.
If you need to resize, apply augmentedimagedatastore to your image datastore - it will be much faster than a custom readfcn, because it preserves prefetch under the hood. If you don’t need to resize, augment, or any other need for a custom readfcn, then vanilla imds is simplest.
Another option is to create a custom layer but you're right, it'll take some work.
HTH Shounak
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!