MATLAB将多张小图整合到一张大图形成模板图
代码如下:
clc;close all;clear all;warning off;%清除变量
rand('seed', 100);
randn('seed', 100);
format long g;
foldername='字符模板';
[datacell,filenamecell,filenameAllcell]=readfun_1n(foldername);
K2=length(filenamecell);
% 设置网格大小和每个图像的大小
gridSize = [10,6]; % 网格,你可以根据需要调整
imageSize = [20 40]; % 每个图像的大小,你也可以调整
% 创建一个大的空白图像来放置所有小图像
outputImageSize = gridSize .* imageSize;
outputImage = uint8(zeros(outputImageSize(1), outputImageSize(2)));
% 遍历所有图像文件并将它们放到网格中
for i = 1:K2
% 读取图像并调整大小
img = datacell{i,1};
img = imresize(img, imageSize);
% 计算图像在网格中的位置
[row, col] = ind2sub(gridSize, i);
rowStart = (row - 1) * imageSize(1) + 1;
rowEnd = row * imageSize(1);
colStart = (col - 1) * imageSize(2) + 1;
colEnd = col * imageSize(2);
% 将图像放到大图像中的正确位置
outputImage(rowStart:rowEnd, colStart:colEnd) = img;
end
% 显示和保存结果
figure;
imshow(outputImage);
imwrite(outputImage, 'output.jpg'); % 你可以更改输出文件的名称和类型
程序结果: