Filter löschen
Filter löschen

Increase the resolution of a filled image

15 Ansichten (letzte 30 Tage)
Boris Huljak
Boris Huljak am 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)

Antworten (1)

Ameer Hamza
Ameer Hamza am 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 Kommentar
Sagar Shriram Salwe
Sagar Shriram Salwe am 30 Sep. 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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by