Setting resolution for getframe?

15 views (last 30 days)
Sonicflash
Sonicflash on 21 Jul 2022
Answered: Voss on 22 Jul 2022
I am currently working on turning a video into frames, apply a filter, then stitch back together in a frame.
However, I am using getframe to capture the image after applying my filter. Here is my problem section:
outputFileName = sprint('Frame %4.4d.png', frame);
frameImage = getframe(gca);
imwrite(frameImage.cdata, outputFileName, 'png');
From what I learned, I am taking the image that is off my monitor. This has caused there to be a resolution change from my original video. Is there a way I am able to change the resolution of each frame saved off? Or perhaps a better methodlogy?

Answers (1)

Voss
Voss on 22 Jul 2022
Setting the resolution with getframe is not supported, but you can use exportgraphics or print, both of which support setting the resolution.
exportgraphics is available in R2020a or newer versions.
print only works with figures, not axes, but you could set your axes Position to cover the entire figure and it would turn out ok.
References: exportgraphics print

Categories

Find more on Convert Image Type in Help Center and File Exchange

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!