필터 지우기
필터 지우기

Error : Function definition is misplaced or improperly nested.

조회 수: 6 (최근 30일)
suoh mikoto
suoh mikoto 2019년 4월 28일
답변: Geoff Hayes 2019년 4월 28일
here the code.
[filename,pathname] = uigetfile({'*'})
if ~isequal(filename,0)
info = imginfo(fullfile(pathname,filename));
if info.BitDepth == 1
msgbox('Citra harus RGB atau Grayscale');
return
else if info.BitDepth == 8
Img = imread(fullfile(pathname,filename));
axes(handles.axes1)
cla('reset')
imshow(Img)
title('Grayscale Image')
else
Img = rgb2gray(imread(fullfile(pathname,filename)));
axes(handles.axes1)
cla('reset')
imshow(Img)
title('Grayscale Image')
end
return
end
handles.Img = Img;
guidata(hObject,handles);
  댓글 수: 5
Geoff Hayes
Geoff Hayes 2019년 4월 28일
For sure the last two lines are out of place and should be in the body of the block that defines the Img. And your first if block is missing an end.
suoh mikoto
suoh mikoto 2019년 4월 28일
that's right, there isn't a space on my "else if".
solved, thanks.

댓글을 달려면 로그인하십시오.

답변 (1개)

Geoff Hayes
Geoff Hayes 2019년 4월 28일
suoh - I think that one problem might be with your "else if". In MATLAB, there isn't a space and so this is just "elseif". The way you have it right now suggests that you have an else block followed by another if/else block which would need to be terminated with an end just like the previous two if blocks... but you only have two ends which might then be the source of the error.
For sure the last two lines are out of place and should be in the body of the block that defines the Img. And your first if block is missing an end.

카테고리

Help CenterFile Exchange에서 Computer Vision with Simulink에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by