美文网首页
使用imagesc同时保存多张图的方法

使用imagesc同时保存多张图的方法

作者: Lairai | 来源:发表于2021-05-18 20:57 被阅读0次

matlab的imagesc函数可以把csv生成矩阵图


imagesc生成的图

当一个文件夹下有多个csv时,可以写个脚本进行批量处理,如下提供了两种方案

1. 同时弹出多个影像

会在运行结束时弹出所有生成的影像并且保存在csv同样的目录下
但是不适用于100人以上的情况,内存吃不消

cd('yourPath'); % 切换到文件夹所在位置

files = dir('*csv*');
csvs = {files.name};

for i=1:length(csvs)
    file_cell = csvs(i);
    filename = file_cell{1};
    
    data = csvread(filename);
    figure, imagesc(data)
    colorbar
    title(filename);
    
    filename = filename(1:(end-4));
    % disp(filename)
    saveas(gcf, strcat(filename, '.jpg'));
end

2. 适用于大样本的情况

上面的脚本会不停弹出新的窗口,造成内存负担,越到后面越慢
经过修改后的脚本只会弹出一个图出来,运行速度更快也不会造成内存泄漏

cd('yourPath'); % 切换到文件夹所在位置

files = dir('*csv*');
csvs = {files.name};
lower = 0; % 控制从第几个影像开始处理,适用于多次处理
upper = 18000;

for i=1:length(csvs)
    if (i > lower & i < upper)
        file_cell = csvs(i);
        filename = file_cell{1};

        data = csvread(filename);

        %figure('visible','off') %不弹出图像
        fig = imagesc(data);
        colorbar
        title(filename)
        filename = filename(1:(end-4));
        % disp(filename)
        saveas(fig, strcat(filename, '.jpg'));
        disp(i); % 处理完第几个影像
    end
end

经过测试发现加上不弹出影像的语句会造成内存泄漏,所以先注释掉
参考速度:每秒一个,MBP M1,rosseta运行matlab

相关文章

  • 使用imagesc同时保存多张图的方法

    matlab的imagesc函数可以把csv生成矩阵图 当一个文件夹下有多个csv时,可以写个脚本进行批量处理,如...

  • 对图片的相关操作

    欢迎加入我个人维护QQ群:379069176PS:定期分享干货 将多张图片同时保存到相册中,出现的错误 将多张图片...

  • CSS-背景5-多张背景图

    1、多张背景图 CSS3可以选择多张背景图,每张背景图都可以独立设置尺寸、定位。下面我们使用CSS3的多张背景图,...

  • 矢量图保存

    matlab自带的saveas函数可以将二维图形保存为矢量图,但不能将三维图形保存为矢量图,使用语法为: 同时,m...

  • imagesc

    功能:使用缩放颜色显示图像 语法 1、imagesc(C) 将C中数据映射为颜色。每个元素C指定一个像素颜色。得到...

  • Spark 读写数据、抽象转换 拾遗

    读 保存 文件保存选项 注:这些保存模式不使用任何锁定,不是原子操作。如果使用 Overwrite 同时该路径(p...

  • 使用Matlab画图

    需求 绘制栅格(矩阵)颜色图 参考网站 显示颜色函数imagesc设置颜色函数colormap设置颜色栏函数col...

  • echarts图初始化时挤在一起问题

    在我们使用图表插件做图时,有时候需要很多张图表,就会在不经意间使用到tab切换功能来实现多张图表展示。那么,这是为...

  • OC中保存多张图片的解决方法

    开发的时候我们有得时候需要获取到网络的图片,然后把它保存到手机相册,我这里是采用高并发的方式保存多张图片的一个小d...

  • iOS 下利用 CGContextRef 简单实现多图拼接功能

    废话开篇:简单实现多张小图拼接为一张长整图的功能。 一、需要实现的功能 将这三张 拼接成下面的一张整图 最终要保存...

网友评论

      本文标题:使用imagesc同时保存多张图的方法

      本文链接:https://www.haomeiwen.com/subject/bdsyjltx.html