python使用plt.imshow在坐标轴上展示图片,imshow()参数设置问题。

近来做模板匹配遇到了一个小问题,简单分享一下自己的解决办法。

python使用plt.imshow在坐标轴上展示图片,坐标默认是从上到下,从左到右。咱们习惯于横坐标由左至右,纵坐标由下至上,默认这样的方式观看图表。

python使用plt.imshow在坐标轴上展示图片,imshow()参数设置问题。_第1张图片

这样看这个图是不是很别扭。纵坐标左上角为0!所以需要咱们设置imshow()参数,修改图表的纵坐标的表示。

然而imshow()这个函数的参数有很多。如下,

matplotlib.pyplot.imshow(X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None,

vmin=None, vmax=None, origin=None, extent=None, shape=None,

filternorm=1, filterrad=4.0, imlim=None, resample=None,

url=None, hold=None, data=None, **kwargs

!!!如果咱们正常显示图片也需要plt.imshow(图表名)就可以了。后面的参数不修改都是默认的。查看很多博客都是说将参数origin设为’lower‘,就可以了。

plt.imshow(X,origin='lower')

但是,改完之后。。。怎么图像本身也颠倒了。。。这肯定不行啊。

python使用plt.imshow在坐标轴上展示图片,imshow()参数设置问题。_第2张图片

 于是思考许久,,,因为参数extent:(left, right, bottom, top),所以将extent参数设置为(0,图片的宽,0,图片的高)。

plt.imshow(X,extent=(0, width, 0, height))

这里宽和高可以调用opencv中.shape()函数。于是得到想要的结果!!!终于改成了。

python使用plt.imshow在坐标轴上展示图片,imshow()参数设置问题。_第3张图片

你可能感兴趣的:(python,matplotlib)