0

我正在打印这样的图像:

img = imread('path/to/image.jpg');
image(img);

这很好,但是当我这样做时

img = imread('path/to/image.jpg');
hold on;
image(img);

图像旋转 180 度。任何想法为什么,以及如何解决这个问题?

我为什么要这样做hold on?因为我想在图片上画点别的东西。

谢谢你的帮助!

确切的问题

图像围绕中心点旋转 180 度,然后围绕 y 轴再旋转 180 度。

答案 :

感谢@lennon310,我已将代码更新为:

img = imread(filename);
img = flipdim(img,1);
do_vlfeat_things(img);
hold on;
image(img);

现在它可以正常工作了。

4

2 回答 2

1

图像的行从上到下存储,您可以使用

hold on,image([1 size(img,1)],[size(img,2) 1],img)

沿 y 轴反转图像。

要在开始时反转加载的矩阵,请使用 (row reverse)

img1 = flipdim(img,1);
于 2014-04-03T11:56:48.297 回答
0

先显示图像,然后使用hold:

image(img);
hold on;
于 2018-04-04T21:30:28.953 回答