I have divided one image into subimages--how can I show the subimages lined up near each other?
4 views (last 30 days)
I have divided one image into four smaller images (subimages). How can I show the subimages like the original image, close to each other and with a line or a few pixels between them. I have tried subplot but it didn´t work.
Thorsten on 14 Feb 2013
Edited: Thorsten on 14 Feb 2013
This implements suggestion #4 of Image Analyst.
I = imread('peppers.png');
I = im2double(I);
Nsubimages = [4 3];
Nsp = 10; % number of separating pixels
sz = size(I);
sznew = [sz(1:2) + (Nsubimages - 1)*Nsp size(I, 3)];
Inew = repmat(1, sznew);
ind1 = round(linspace(1, sz(1), Nsubimages(1) + 1));
ind2 = round(linspace(1, sz(2), Nsubimages(2) + 1));
for i = 1:length(ind1)-1
for j = 1:length(ind2)-1
i1 = ind1(i):ind1(i+1);
i2 = ind2(j):ind2(j+1);
Inew(i1 + (i-1)*Nsp, i2 + (j-1)*Nsp, :) = I(i1, i2, :);
More Answers (1)
Image Analyst on 14 Feb 2013
You can either
- show the original image (no lines/gaps), or
- save the images to files and use montage() (again, no lines or gaps), or
- you can use a GUI (like use GUIDE) and place 4 axes really close to each other and use imshow() to display the images in the axes, or
- make a larger image and use regular, normal indexing to assign the sub images into the proper location in the larger image.