how to solve too many arguments error?
6 views (last 30 days)
Show older comments
when i try to display multiple images using the formula below. i get error of too many arguments. when i execute the first statement , it gives me error. what am i doing wrong? the code is as follows:
if true
% code
[X1,map1]= image; ///image variable contains original jpg image.
[X2,map2]= image2; /// image2 variable contains transformed image.
subplot(1,2,1), imshow(X1,map1)
subplot(1,2,2), imshow(X2,map2)
end
0 Comments
Accepted Answer
Guillaume
on 8 Oct 2016
Note: it is recommended that you do not use image as a variable name since it's already the name of a function in matlab.
The syntax [X, map] = is normally used in conjuction with imread to load an indexed image (rgb or grayscale images don't have an associated colour map), as in:
[X, map] = imread('someindexedimage.bmp');
Now, since the jpg format does not support indexed images, you'd never use that syntax for a jpg image.
Furthermore, the syntax
[something, something] = someothervariable;
would never be valid, since you're trying to assign a single variable into two variables.
In the end, if image and image2 are truly jpg images, then to display them simply:
subplot(1, 2, 1), imshow(image); %would be better called image1
subplot(1, 2, 2), imshow(image2);
Or you could do:
imshowpair(image, image2, 'montage');
2 Comments
Guillaume
on 8 Oct 2016
As far as I know, you can only have one image per axis. If both images are the same height, you can always do:
imshow([image1, image2])
to have them side by side.
More Answers (1)
Kishore Kumar
on 8 Oct 2016
if true
% code
X1 = image;
X2 = image2;
subplot(1,2,1), imshow(X1,map1)
subplot(1,2,2), imshow(X2,map2)
end
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!