what is repmat() doing in the following code?
4 次查看(过去 30 天)
显示 更早的评论
function handles = Open_Image(hObject, eventdata, handles, type, axesIm)
% if the file-name and path-name are not epty.
if not(isequal(handles.file, 0)) && not(isequal(handles.path,0))
% the current axes should be set to handles.axes
axes(handles.axes);
% Extract image and colormap from file path
[handles.img, handles.map] = imread([handles.path handles.file]);
% Viewing the image
[n,m,l] = size(handles.img);
% with bidimensional images, image does not work properly
if (l == 1)
image (repmat(uint8(handles.img),[1 1 3]));
else
image(handles.img);
end
axis equal; % sets the aspect ratio. (Show the image in its right ratio)
axis tight; % Sets the axis limits to the arrange of the data.
axis off; % Turn off all axis labeling
guidata(hObject, handles);
end
0 个评论
采纳的回答
Jan
2017-10-1
repmat does exactly, what is explained in the documentation. See doc repmat:
The contents of the array handles.img is repeated 3 times along the 3rd dimension. This will create an RGB image in grey color from the matrix in handles.img.
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!