imresize error. "Expected input method to be a string or a character vector. Allowed values are: 'cubic' or 'bicubic'."
2 次查看(过去 30 天)
显示 更早的评论
I get the error message:
Expected input method to be a string or a character vector. Allowed values are:
'cubic' or 'bicubic'.
when running the following code:
scale = delta1/delta2;
Image_scaled = imresize(Image, scale, 'bilinear');
Strangely, this error happens only when I run the code on a GPU server, but not on a CPU. Do you have any idea what is causing this error? I do not want to use cubic or bicubic interpolation in my code.
Note that the variable 'Image' is a gpuArray, and I also get the warning message:
Warning: The CUDA driver must recompile the GPU libraries because your device is more recent than the libraries. Recompiling can take several minutes.
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
0 个评论
采纳的回答
更多回答(2 个)
Alex Taylor
2021-12-30
If you look at the documentation for previous versions of MATLAB, under the Extended Capabilities section for gpuArray in the imresize doc, there is a note that only bicubic interpolation was supported for gpuArray/imresize in R2020b and previous versions:
In R2021a and later the full set of interpolants work for gpuArray inputs.
Image Analyst
2021-12-27
First of all, it's probably not a good idea to call your variable Image since image() is a built-in function. I know one is capital and one is not, but still, I would not recommend it.
What is delta1 and delta2? Take the semicolon off and see what the value is. Might scale be an array?
Does the code below work for you?
grayImage = imread('moon.tif');
whos grayImage
subplot(1, 2, 1);
imshow(grayImage);
axis('on', 'image')
delta1 = 3
delta2 = 50
scale = delta1/delta2
whos scale
smallImage = imresize(grayImage, scale, 'bilinear');
subplot(1, 2, 2);
imshow(smallImage);
axis('on', 'image')
另请参阅
类别
在 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!