【问题标题】:File created using imwrite does not appear不显示使用 imwrite 创建的文件
【发布时间】:2011-10-24 13:30:27
【问题描述】:

Matlab 新手,如果这是一个愚蠢的问题,非常抱歉。我正在为我的研究过滤一系列图像。我对实际的图像处理没有问题,当我去保存修改后的图像时,我遇到了麻烦。出于某种原因,我只能使用 imwrite 将修改后的图像保存为 .gif 文件。如果我尝试将它们保存为 .jpg、.bmp 等,则该文件不会出现在工作文件夹中。出现相应的通用文件,但实际的 .jpg 文件没有出现。此外,当我使用 imread 重新打开 midified 文件(实际上保存为 .gifs)时,图像只是黑色的。但是,如果我在 Matlab 之外打开 .gif 文件,它会按预期显示。代码如下。

close all
N=90;
IMAGES=cell(1,N); %creates a cell to store image data
FNAMEFMT='20110805115033(1)_%d.jpg';

for i=1:N
    IMAGES{i}=imread(sprintf(FNAMEFMT,i)); %reads original images into IMAGES
end

RESULT=cell(1,N); %to store modified/filtered images

for i=1:N
    gray=rgb2gray(IMAGES{i}); %converts to grayscale
    binary=im2bw(gray,.5); %converts to bw
    filter=bwareaopen(binary,35); %removes small features
    RESULT{i}=filter; %saves modified image in RESULTS
end

for i=1:N
    WRITEFMT='filter_%d';
    imwrite(RESULT{i},sprintf(WRITEFMT,i),'gif'); %writes RESULTS as .gif
end

【问题讨论】:

    标签: image matlab file-io jpeg


    【解决方案1】:

    如果我尝试将它们保存为 .jpg、.bmp 等格式,则该文件不会出现在工作文件夹中。

    你需要改变

    WRITEFMT='filter_%d';
    

    WRITEFMT='filter_%d.jpg';
    

    您输出的文件是 jpeg 文件(根据 imwrite 参数 'jpg' 而不是 'gif'),但它们没有文件扩展名.如果您手动添加扩展程序,它们会以 jpg 格式打开。

    对于黑色 gif,see if this helps

    导出为 jpg 后,可以查看它们

    imshow(imread('filter_1.jpg'))
    

    【讨论】:

      猜你喜欢
      • 2020-10-18
      • 1970-01-01
      • 1970-01-01
      • 2019-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-08
      • 1970-01-01
      相关资源
      最近更新 更多