How to display multiple images (non indexed images) with different sizes in a row?
조회 수: 3 (최근 30일)
이전 댓글 표시
Hi
Say I have 3 images and they are not indexed images therefore they don't have X, map, they only have RGB values.
And these 3 images are of different sizes.
How do I display them in a row?
댓글 수: 0
답변 (2개)
gonzalo Mier
2019년 5월 8일
I would use moon1, moon2 and moon3 as 3 images that can be different and with different size, but I will obtain them as
moon1 = imread('moon.tif');
moon2 = imread('moon.tif');
moon3 = imread('moon.tif');
If you want them to be plotted in the same row you can use subplot to create the sections in the figure and imshow to plot them as:
subplot(3,1,1); imshow(moon1);
subplot(3,1,2); imshow(moon2);
subplot(3,1,3); imshow(moon3);
댓글 수: 2
gonzalo Mier
2019년 5월 9일
Yes, moon1 is just a random image as RGB1. subplot will resize the images to fill the space that you want to give them. If I want moon look 3 times bigger than moon3 and moon2 twice bigger than moon3, you can distribute your subplots as:
subplot(6,1,[1,2,3]); imshow(moon1);
subplot(6,1,[4,5]); imshow(moon2);
subplot(6,1,[6]); imshow(moon3);
Image Analyst
2019년 5월 9일
Have you tried imtile()?
댓글 수: 6
Image Analyst
2019년 5월 17일
Because 2018a came out in March 2018, while 2018b (which is the release where imtile first was introduced) came out in September 2018. So your version came out BEFORE the function was introduced. Why not just upgrade?
Or stitch them together, like
rgb3 = [rgbImage1, regImage2, rgbImage3];
They must all have the same number of rows. If not, figure out how many rows need to be added to the smaller ones and use padarray(). Or else use imresize() to make them all the same size.
참고 항목
카테고리
Help Center 및 File Exchange에서 Detection에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!