Julia Flux,神经网络中不同维度的图像
Julia Flux, images with different dimension in neural network
我想识别一个细胞是否感染了疟疾 (https://www.kaggle.com/iarunava/cell-images-for-detecting-malaria)。
但是图片有不同的大小,所以我想将每张图片调整到相同的大小,以便能够使用我的第一层(具有静态大小)
如何在 Julia 中调整图像大小?或者我可以只使用通量来计算不同维度的图像吗?
您可以使用 Images
和 ImageMagick
软件包(您需要同时安装两者)执行此操作,然后:
using Images
download("https://juliaimages.org/latest/assets/logo.png","test.png");
img = Images.load("test.png");
size(img) # outputs (128, 128)
img2 = imresize(img,(50,50));
Images.save("test2.png",img2);
文件 test2.png
的大小为 50x50。有关 imsize
的更多信息,请访问:
https://juliaimages.org/latest/function_reference.html#Spatial-transformations-and-resizing-1
您可以事先执行此操作(即在 Flux.jl 之外),否则每次计算梯度时都需要进行插值。
软件包 Interpolations
还允许您调整图像大小。然后,您将分别对红色、绿色、蓝色通道进行插值。
对于 kaggle 挑战的特定图像,用黑色像素填充数据以达到通用大小也是一种选择。
我想识别一个细胞是否感染了疟疾 (https://www.kaggle.com/iarunava/cell-images-for-detecting-malaria)。 但是图片有不同的大小,所以我想将每张图片调整到相同的大小,以便能够使用我的第一层(具有静态大小)
如何在 Julia 中调整图像大小?或者我可以只使用通量来计算不同维度的图像吗?
您可以使用 Images
和 ImageMagick
软件包(您需要同时安装两者)执行此操作,然后:
using Images
download("https://juliaimages.org/latest/assets/logo.png","test.png");
img = Images.load("test.png");
size(img) # outputs (128, 128)
img2 = imresize(img,(50,50));
Images.save("test2.png",img2);
文件 test2.png
的大小为 50x50。有关 imsize
的更多信息,请访问:
https://juliaimages.org/latest/function_reference.html#Spatial-transformations-and-resizing-1
您可以事先执行此操作(即在 Flux.jl 之外),否则每次计算梯度时都需要进行插值。
软件包 Interpolations
还允许您调整图像大小。然后,您将分别对红色、绿色、蓝色通道进行插值。
对于 kaggle 挑战的特定图像,用黑色像素填充数据以达到通用大小也是一种选择。