Question
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);
Expert Answer
John Michell
PhD Expert
Answered Aug 12, 2026
You can save the image without using the “imagesc()” function as follows:
new_name3 = strcat(f_name_image, '\', kk, '_', num2str(ff), '_pair.webp'); 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.webp'); 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.
100% Run Guarantee
3-Hour Fast-Track Delivery
Need a Custom Version or Complete Simulation for This Problem?
Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.
Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here
Related matlab Questions & Solutions
Browse All →
Explore similar technical troubleshooting questions and verified MATLAB solutions:
Ready-to-Run MATLAB & Simulink Projects
Browse All Projects →