フィルターのクリア

How to save concatenated images in MATLAB?

2 ビュー (過去 30 日間)
SHAUROV DAS
SHAUROV DAS 2020 年 7 月 29 日
回答済み: Sourabh Kondapaka 2020 年 8 月 10 日
I am trying to concatenate two 256x256 images and save them using imwrite. The saved image is supposed to be 256x512, but when I load the saved image, the size shows to be 343x434x3. How do I solve this?
the code I am using is:
new_name3 = strcat(f_name_image, '\', kk, '_', num2str(ff), '_pair.png');
pair = [orig_im noisy_image]; %concatenating two 256x256 images
imagesc(pair)
f = getframe(gca);
im = frame2im(f);
imwrite(im, new_name3);
  1 件のコメント
Alexander
Alexander 2020 年 7 月 31 日
try "imwrite(pair, new_name3);" instead

サインインしてコメントする。

採用された回答

Sourabh Kondapaka
Sourabh Kondapaka 2020 年 8 月 10 日
Hi,
You can save the image without using the imagesc()” function as follows:
new_name3 = strcat(f_name_image, '\', kk, '_', num2str(ff), '_pair.png');
pair = [orig_im noisy_image]; %concatenating two 256x256 images
imwrite(pair, new_name3);
However, if you do need to use “imagesc()” function, then please do the following:
new_name3 = strcat(f_name_image, '\', kk, '_', num2str(ff), '_pair.png');
pair = [orig_im noisy_image]; %concatenating two 256x256 images
scaled_image = imagesc(pair);
imwrite(scaled_image.CData, new_name3);
The “imagesc()” function returns an “image” object. You need to extract the matrix values from the image object when writing into a file.
CData” property of the “Image” object stands for “Color Data” which is the matrix values of the concatenated image.
If you would like to learn more about the “Image object and its properties, please check here.

その他の回答 (0 件)

製品


リリース

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by