Matlab怎么保存放大之后的照片

原图是这样的

img


我想保存放大之后的

img


且分辨率不变,保存之后只有图片没有坐标

在 MATLAB 中,可以使用以下代码将图像保存为指定大小的文件:

% Load image
img = imread('your_image_file.jpg');

% Display image
imshow(img);

% Set desired size
width = 1200;
height = 800;

% Resize image
resized_img = imresize(img, [height width]);

% Save image
imwrite(resized_img, 'your_resized_image_file.jpg');

使用imread函数加载图像文件,然后使用imshow函数显示图像。接着,我们设置了所需的图像大小,使用imresize函数对图像进行了调整。最后,我们使用imwrite函数将调整后的图像保存到文件中。

基于ChatGPT的回答:
在Matlab中,可以使用imwrite函数将放大后的图片保存为文件。为了保持分辨率不变,可以指定保存文件的dpi(每英寸点数)为原始图片的dpi。同时,可以使用set函数将坐标轴隐藏,以便保存的图片中只包含图像本身。

具体代码如下:

% 假设原始图片为img,放大2倍后为img2x
dpi = get(0, 'ScreenPixelsPerInch'); % 获取屏幕dpi
imwrite(img2x, 'enlarged_img.png', 'Resolution', dpi); % 保存为文件
set(gca, 'Visible', 'off'); % 隐藏坐标轴
print('enlarged_img.png', '-dpng', ['-r', num2str(dpi)]); % 再次保存为文件


第一次保存使用imwrite函数,第二次保存使用print函数。两种方式都可以指定dpi,但是imwrite函数的dpi会被忽略,因此需要使用print函数来保存真正分辨率不变的图片。

分辨率不变的情况下有很多方法

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
在 Matlab 中,可以使用 imresize 函数来放大图片,然后使用 imwrite 函数保存图片。

假设原图像为 img,要将其放大2倍,可以使用以下代码:

scaled_img = imresize(img, 2, 'bicubic');
imwrite(scaled_img, 'scaled_img.jpg', 'jpg');

其中,第一个参数是要放大的图像,第二个参数是放大倍数(这里是2),第三个参数是插值方法(这里使用双三次插值)。保存时,第一个参数是要保存的图像,第二个参数是文件名(包括路径和扩展名),第三个参数是文件格式(这里是 JPG 格式)。

如果要保持分辨率不变,可以在保存时指定 DPI(每英寸点数)。默认情况下,imwrite 使用 96 DPI,可以通过指定 'Resolution' 参数来改变 DPI,例如:

imwrite(scaled_img, 'scaled_img.jpg', 'jpg', 'Resolution', 300);

这将保存为 300 DPI 的 JPG 文件。请注意,改变 DPI 不会改变图像的大小,只会影响打印或显示的大小。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

你好,保存matlab图像可以采用以下操作
1.点击编辑
2.点击复制图像
3.打开CorelDraw等绘图软件
4.粘贴
5.你将得到一个矢量图,想怎么改就怎么改

以下内容部分参考ChatGPT模型:


可以使用imresize函数来放大图片,并使用imwrite函数保存放大后的图片。具体步骤如下:

  1. 读取原图像
img = imread('原图像路径');
  1. 使用imresize函数放大图像
scale = 2; % 放大比例
new_img = imresize(img,scale);
  1. 使用imwrite函数保存放大后的图片
imwrite(new_img,'保存路径');

完整代码示例:

img = imread('原图像路径');
scale = 2; % 放大比例
new_img = imresize(img,scale);
imwrite(new_img,'保存路径');

注意:放大后的图片分辨率会变大,如果需要保持原图像的分辨率不变,可以在保存时指定dpi参数。

imwrite(new_img,'保存路径','dpi',原图像分辨率);

如果我的建议对您有帮助、请点击采纳、祝您生活愉快

Matlab如何原比例保存图片
可以借鉴下
https://blog.csdn.net/qq_35352571/article/details/125811300

在 MATLAB 中保存放大之后的照片,可以使用 imwrite 函数来实现。该函数用于将图像保存到文件中。
为了保持分辨率不变,你可以在放大图片之前,先将其转换为更高分辨率的格式。然后,使用 imwrite 函数将该图像保存为所需的文件格式。在保存时,可以选择是否要保存坐标信息。
以下是一个示例代码:

% 加载需要保存的图片
img = imread('example.jpg');
% 对图片进行放大处理
img2 = imresize(img, 2);
% 将放大后的图片保存为 PNG 格式,并且不保存坐标信息
imwrite(img2, 'example2x.png', 'png', 'Mode', 'lossless');

这段代码将原始图片 example.jpg 放大两倍后,保存为 example2x.png 文件,同时不保存坐标信息。您可以根据自己的需要,更改文件名和格式等参数。

以下答案由GPT-3.5大模型与博主波罗歌共同编写:
您可以通过以下步骤将放大后的图像保存为原始分辨率的图像,即使它们在显示器上看起来更大。

步骤1: 在MATLAB命令窗口或脚本中,打开原始图像:

img = imread('example.jpg'); % 请替换为您自己想要打开的图像

步骤2: 打开图像显示窗口并对图像进行放大操作。可以通过以下方式放大图像:

  • 单击“工具”菜单中的放大镜工具按钮。
  • 在显示窗口中按住鼠标左键并拖动以框选感兴趣区域。
  • 选择“视图”菜单中的“放大”选项,或按Ctrl + Plus键放大图像。

步骤3: 保存放大后的图像。请使用以下代码将放大后的图像保存为原始分辨率的图像:

% 获取放大后的图像数据及其大小
newImg = getframe(gca);
newImg = imresize(newImg.cdata, [size(img, 1) size(img, 2)]);

% 保存无坐标的图像
imwrite(newImg, 'example_zoomed.jpg');

该代码会将图像数据保存为JPEG格式的文件,文件名为“example_zoomed.jpg”。这样保存的图像是没有坐标轴的,因为坐标轴只是显示时设置的。

注意:该代码仅保存放大后的图像,而不带有任何关于坐标轴或标签的信息。如果您需要将图像及其坐标轴保存为完整的MATLAB图像,请使用以下代码代替:

% 获取放大后的图像数据及其大小
newImg = getframe(gca);
newImg = imresize(newImg.cdata, [size(img, 1) size(img, 2)]);

% 获取当前坐标轴的信息
ax = gca;
axPos = ax.Position;
ax.Visible = 'off';

% 创建一个新的图像并将其作为当前图像
fig = figure('Visible', 'off');
set(gcf, 'InvertHardcopy', 'off');
set(gca, 'Position', axPos);
set(gca, 'Units', 'normalized', 'OuterPosition', [0 0 1 1]);
imshow(newImg);
print('example_zoomed', '-djpeg', '-r0');

该代码将通过创建一个新的图像并复制坐标轴信息的方式,保存完整的MATLAB图像,其中包括放大的图像及其坐标轴。
如果我的回答解决了您的问题,请采纳!