i make a function in which i apply contouring on image and can not access in other function as i set it as global?what should i do?
    조회 수: 4 (최근 30일)
  
       이전 댓글 표시
    
i make a function in which i apply contouring on image and set it as global .now i want to use this global variable in other function.i use this variable to show the image but it show nothing.my code is
 function pushbutton5_Callback(hObject, eventdata, handles)
 global scx
 imshow(scx)
 function pushbutton6_Callback(hObject, eventdata, handles)
 global scx
 global a
 gd = imread(a);
 %imshow(sx)
 sf = rgb2gray(gd);
 scx = imcontour(sf  , 10);
it show just blank popup screen and does not show the image that is save in scx variable. waiting for your help.
댓글 수: 3
채택된 답변
  Walter Roberson
      
      
 2016년 5월 9일
        The first output of imcontour is a contour matrix, which is a numeric matrix made in a special form. You cannot display the contour plot by using imshow on the contour matrix.
No documented routine is provided to draw a contour matrix.
No documented routine is provided to write a contour plot directly into an image without displaying the contour plot first.
You should consider recording the second output of imcontour and setting the Visible property of it off until you want to see it and then set the Visible property to on
댓글 수: 9
  Walter Roberson
      
      
 2016년 5월 10일
				[scx, ch] = imcontour(sf  , 10);
ax = ancestor(ch, 'axes');
set(ax, 'visible', 'off')
frame = getframe(ax);
contour_image = frame.cdata;
figure();image(contour_image);   %so you can see it worked
추가 답변 (0개)
참고 항목
카테고리
				Help Center 및 File Exchange에서 Contour Plots에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


