Define one axe for many images

1 次查看(过去 30 天)
I have 10 axes in which I want the most relevant images to be shown in. So I defined them as follows. But I have a problem that if the first image is not relevant, the axes1 remains empty. Can I just define one axe for all images? How to do that?
  5 个评论
Ali Jaber
Ali Jaber 2016-4-4
I can't since I want the old image to stay appeared..

请先登录,再进行评论。

采纳的回答

Geoff Hayes
Geoff Hayes 2016-4-4
Ali - if you want to ignore the images which are not relevant (does this mean that cosTheta <= 0.5?) then use a different local variable to access the axes handles. For example,
atAxes = 1;
for k=1:10
a = trainZ(k,:);
b = testZ;
cosTheta = dot(a,b)/(norm(a)*norm(b));
if(cosTheta > 0.5)
str = strcat('C:\Users\User\Desktop\images\',num2str(k),'.jpg');
img = imread(str);
axes(handles.axes(atAxes));
atAxes = atAxes + 1;
imshow(img);
end
end
Note how we use atAxes so that we update the appropriate axes with a "relevant" image. So if 4 of our 10 images are relevant, then only the first four axes are updated with the images.
Is this what you are looking for? Or do you require something more to ensure that the unused axes are hidden or removed?
  2 个评论
Ali Jaber
Ali Jaber 2016-4-4
Thank you very much.. This is exactly what I want. Concerning not relevant images (cosTheta <= 0.5), I take it as example since I am not sure about it. Do you have any idea that may help me?
Geoff Hayes
Geoff Hayes 2016-4-4
Ali - without knowing more about what your code is doing or what you consider to be "relevant", I can't comment on the use of cosTheta. What does it represent to you?

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2016-4-4
You can display more than one image in an axes if you stitch them together.
tallImage = [image1; image2];
wideImage = [image1, image2];

标签

Community Treasure Hunt

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

Start Hunting!

Translated by