How to capture image in gui?

3 次查看(过去 30 天)
I have created gui with two axes and one pushbutton. I use axes1 to view live video from webcam and i don't have problem with it. But i don't know how to capture the image from axes1 and display the image in axes2.

采纳的回答

Image Analyst
Image Analyst 2018-2-17
Try this:
axes(handles.axes1); % Switch focus to axes1.
theImage = getimage(); % Snag the image out of axes1.
axes(handles.axes2); % Switch focus to axes2.
imshow(theImage); % Place theImage into axes2.
If you want to make more compact, you could skip axes() and pass the axes handle into getimage() and imshow() but then to get other things, like title() etc., to appear on the correct axes you'll have to pass the handles into those functions too. If you call axes() things like titles will appear on the current axes (the one you just passed into axes() function).

更多回答(1 个)

Roy Kadesh
Roy Kadesh 2018-2-16
You can use screencapture to use Java to make a capture of the contents of the axis, which you can then imshow (or image, or set(ax2,'CData',IM)).
  1 个评论
Image Analyst
Image Analyst 2022-3-17
Or you can use exportgraphics() or copygraphics() if you have R2020b or later.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Printing and Saving 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by