You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Matlab中为图像叠加10x10网格

Matlab批量为图像叠加10×10网格实现方法

你手里的图像都是固定1280×720分辨率,不需要做动态分辨率适配,用Matlab自带函数就能完成批量处理,不需要额外安装第三方工具包,新手直接按步骤操作就行。

操作步骤

  • 先把所有需要处理的44张图像放到单独的空文件夹里,不要混入其他无关文件,避免程序读错
  • 打开Matlab,将顶部的当前工作路径切换到你存图像的这个文件夹
  • 新建一个空白脚本,把下面的代码复制进去,直接点运行就可以
%% 批量叠加10*10网格脚本
% 读取当前文件夹下的图像,按需修改后缀匹配你的图像格式
file_list = dir('*.jpg');
% 如果你的图像全是png格式,就把上一行的jpg改成png;如果同时有jpg和png,保留下面这行
file_list = [file_list; dir('*.png')];

% 已知固定分辨率
img_width = 1280;
img_height = 720;
% 计算网格线间隔:宽、高各分10等份
w_gap = img_width / 10;
h_gap = img_height / 10;

% 新建输出文件夹存结果,不会修改原图
if ~exist('grid_result', 'dir')
    mkdir('grid_result');
end

% 逐张处理图像
for idx = 1:length(file_list)
    % 读取当前图像
    raw_img = imread(file_list(idx).name);
    % 创建不可见的图窗,尺寸和原图完全一致,避免留白边
    temp_fig = figure('Visible','off', 'Position',[0 0 img_width img_height]);
    ax = axes('Position',[0 0 1 1]);
    imshow(raw_img);
    hold on;

    % 画竖向网格线:10格共11条线,包含左右边缘
    for x = 0:w_gap:img_width
        line([x, x], [0, img_height], 'Color','red', 'LineWidth',1);
    end
    % 画横向网格线
    for y = 0:h_gap:img_height
        line([0, img_width], [y, y], 'Color','red', 'LineWidth',1);
    end
    hold off;

    % 保存处理后的图像到输出文件夹,文件名和原图一致
    saveas(temp_fig, fullfile('grid_result', file_list(idx).name));
    close(temp_fig); % 关闭临时图窗,避免占用内存
    fprintf('进度:已完成第%d张/%d张\n', idx, length(file_list));
end
disp('全部图像处理完成,结果存放在grid_result文件夹内');

常用参数调整

  • 如果不需要给图像最外侧加边框线,把两个画线循环的范围从0:w_gap:img_width改成w_gap:w_gap:img_width-w_gap、0:h_gap:img_height改成h_gap:h_gap:img_height-h_gap即可,画出来的线刚好把图像内部分成10×10的区块
  • 网格颜色直接修改line函数里的Color参数即可:红色对应'red'、白色'white'、黑色'black'、黄色'yellow';线宽修改LineWidth后面的数值,数字越大线越粗
  • 如果你的图像是bmp、tif等其他格式,照着开头读取文件的格式,新增一行file_list = [file_list; dir('*.bmp')];即可匹配对应格式

提示:运行前建议备份一次原图,虽然代码不会改动原文件,备份可以避免误操作丢文件。

内容的提问来源于stack exchange,提问作者Michelle Melin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 17:58:00