what is repmat() doing in the following code?

4 visualizaciones (últimos 30 días)
Ba Ba Black Sheep!
Ba Ba Black Sheep! el 1 de Oct. de 2017
Respondida: Jan el 1 de Oct. de 2017
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

Respuesta aceptada

Jan
Jan el 1 de Oct. de 2017
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.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by