Azzera filtri
Azzera filtri

Increase the resolution of a filled image

15 visualizzazioni (ultimi 30 giorni)
Boris Huljak
Boris Huljak il 11 Apr 2018
Hello, I am trying to make an B&W image out of a contour of a plot. The code I use so far is below, where B2 is a matrix of 2 columns that holds the x and y position of the contour. The code actually works well, but the problem I have is that I get a 560x420 image, and I can not figure out how to get a better resolution. Do you have any idea on how to do this ? Thanks !
figure;
fill(B2(:,1),B2(:,2),'w')
axis([-200 200 -200 200])
set(gca,'visible','off')
set(gcf,'color',[0 0 0])
F = getframe(gcf);
figure;
imshow(F.cdata)

Risposte (1)

Ameer Hamza
Ameer Hamza il 25 Apr 2018
The documentation of getframe() tells that output resolution depends on the screen resolution. You can increase the size of figure object as follow calling getframe() as follow,
f = gcf;
f.Position = [100 100 width height]; % here specify the width and height of the figure.
% corresponding to this, the image resolution will also change.
F = getframe(f);
Another way is to use imresize() but the quality is low as compared to the first method.
If you want really high-quality graphics, you might want to save figure as a vector graphic image e.g. .eps file using following command,
hgexport(gcf, 'test');
  1 Commento
Sagar Shriram Salwe
Sagar Shriram Salwe il 30 Set 2019
The simplest method to solve this i find out:
Just go to figure created by imagesc
Open file >Export setup and change the size from auto to expected size required.
Suppost 1920x1024 points and save this configuration and again rerun the .m file without closing image.
The expected changes required for high resolution will get obtained after doing this.
Hope this will help

Accedi per commentare.

Categorie

Scopri di più su Images in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by