How do I display 55x305x4 .mat file as an image in Matlab and save it ?

4 次查看(过去 30 天)
welcome All Matlab users, I have an depth image in .mat file the image 4 channel 55*305*4 ... I have a problem with display it and save it in External file.please,could you help me.
  6 个评论
sloppydisk
sloppydisk 2018-6-7
You must really specify what the input channels represent otherwise there is no meaningful way of converting the file and we will just be guessing at what you want.

请先登录,再进行评论。

回答(1 个)

Anton Semechko
Anton Semechko 2018-6-7
% Data array
A=Position3DGrid;
% Convert to uint8
I_min=min(A(:));
I_max=max(A(:));
A=uint8(255*(A-I_min)/(I_max-I_min));
% Composite image
n=2; % number of pixels added to when making a boundary between channels; to separate them visually
IM=cell(4,1);
for i=1:4
im=repmat(A(:,:,i),[1 1 3]);
if i<4 % boundary
im=padarray(im,[n 0 0],255,'post');
end
IM{i}=im;
end
IM=cell2mat(IM);
IM=padarray(IM,[n n 0],255);
% Save composite image to current directory
imwrite(IM,'composite image.jpg')
% This is what the composite image looks like
figure, imshow(IM)

类别

Help CenterFile Exchange 中查找有关 Get Started with Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by