Hide figure while using geframe/videowriter function

9 ビュー (過去 30 日間)
Paschalis Garouniatis
Paschalis Garouniatis 2020 年 4 月 25 日
コメント済み: Ameer Hamza 2020 年 4 月 27 日
I am using the function getframe in order to obtain frames from a figure and the videowriter to create a video from those frames. I need to hide the figure during the process. I used the command set(gcf,'visible','off') but the process stops with an error message popping up. It states that the frames obtained from the function getframe are not of the same size. Is there a solution or another way to overcome this problem? Thanks in advance.

回答 (1 件)

Ameer Hamza
Ameer Hamza 2020 年 4 月 25 日
編集済み: Ameer Hamza 2020 年 4 月 25 日
Call getframe with the axes handle
frame = getframe(gca); % gca is the current axes handle
It will only return the image of the axes.
  8 件のコメント
Paschalis Garouniatis
Paschalis Garouniatis 2020 年 4 月 26 日
編集済み: Paschalis Garouniatis 2020 年 4 月 26 日
Your code works also with my MATLAB release. If it is possible try your code using the videoWriter function. My figure is an animation using plot function and illustrates a moving object. With some digging I found that getframe() cannot work with hidden figures and even if we use set(gcf,'visible','off') the figure window still pops up. In my case though, as I mentioned above, there is a problem with different frame size obtained using getframe() from each step of the plot. I think this has to do with the fact that the first frame size determines the size that will be used from the videoWriter. Anyway thank you for your time.
Ameer Hamza
Ameer Hamza 2020 年 4 月 27 日
Can you write a small code snippet which gives an error with videoWriter?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeInteractive Control and Callbacks についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by