Save plot on top of an image.

2 次查看(过去 30 天)
Ana Olivia
Ana Olivia 2015-6-16
评论: Ana Olivia 2015-6-17
Hello!
I need to save a graph on top of a black image. I have an image, so I want to make a plot on this image, and save it on a new image with black background and with same dimensions.
In the beginning I "paint" the image with black color, since I want both images to have the same dimensions. Then I use ginput and plot to pick the part of the image that I want. Then I open the black image using imshow(blackimage) and I use these commands:
f = getframe(gcf);
DATA = frame2im(f);
and I use imwrite to save DATA.
But I am having a problem with it because this program changes the dimensions of DATA, changes it to uint8, and the image becomes 3D. Please, can someone help me to solve this problem? What can I do to both images have the same dimensions?
Thank you for the help!
  4 个评论
Walter Roberson
Walter Roberson 2015-6-16
Is all of the original image to be included in the final image (except for the part covered up by the plot)? Or are you extracting a portion of the image and want to plot on a sub-portion of that? Something like:
display the full image
user selects a portion of it
everything outside of the selected portion is to be cleared to black
then plot on top in some pre-determined location
Is the plot a constant size and constant coordinates? Or is the user pointing out the location (and implicitly size) to put the plot? What is being set to black??
Ana Olivia
Ana Olivia 2015-6-17
Yes, I want to do this. I want to select a portion of the image and everything outside the selected portion needs to be cleared to black. I tried to use roipoly, but it just works to polygons, and I want a line.
No, the plot is not constant. The user points the location (using ginput). Then the rest is set to black.

请先登录,再进行评论。

回答(1 个)

LUI PAUL
LUI PAUL 2015-6-16
编辑:LUI PAUL 2015-6-16
Is this what you are looking for?
uiopen('C:\black.gif',1)%first image
imshow('black.gif');
[x,y] = ginput% select your interest
hold on
plot((1:900),1:900)%second image,plotting on first image
note: 1.here at the time of using "ginput" you have to select area manually and hit enter.
2.insteed of plot use your own.
  1 个评论
Ana Olivia
Ana Olivia 2015-6-17
I already plotted the graphic on the image with black background, but I couldn't save it. Every time I try to save the image the size of it changes. So I am searching for a way to save the modified image (image with plot).
But thanks a lot for answering me!

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by