Comment enregistrer une image dans Matlab avec des axes mais sans traçage ?
-
21-12-2019 - |
Question
J'ai une image que je souhaite enregistrer avec des axes dessus.
imwrite(I,jet,'image.jpg');
enregistrera l'image.
I = image;
RI = imref2d(size(I));
RI.XWorldLimits = [xmin xmax];
RI.YWorldLimits = [ymin ymax];
figure(1);
imshow(I,RI,jet);
xlabel('x');
ylabel('y');
print(1,'-djpeg','image.jpg');
tracera l'image avec des axes sur une figure puis la sauvegardera avec des axes.
Je souhaite enregistrer l'image avec des axes, sans la tracer au préalable dans une figure.Y a-t-il un moyen de faire cela?
La solution
Si vous souhaitez que la figure ne soit pas vue par l'utilisateur, le plus simple est de créer la figure et de définir son 'visible'
propriété à 'off'
:
I = image;
RI = imref2d(size(I));
RI.XWorldLimits = [xmin xmax];
RI.YWorldLimits = [ymin ymax];
figure(1);
set(1,'visible','off') %// add this line to make figure not visible
imshow(I,RI,jet);
xlabel('x');
ylabel('y');
print(1,'-djpeg','image.jpg');
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow