Matplotlib 中的 plt.show 和 cv2.imshow 有什么区别?

matplotlibpythondata visualization

简单调用 imread 方法即可将我们的图像加载为多维 NumPy 数组(红色、绿色和蓝色分量分别一个),然后 imshow 会在屏幕上显示我们的图像。而 cv2 将 RGB 图像表示为多维 NumPy 数组,但顺序相反。

步骤

  • 设置图形大小并调整子图之间和周围的填充。

  • 初始化文件名​​。

  • 使用 nrows=1、ncols=2、index=1 向当前图形添加子图。

  • 使用 cv2 读取图像。

  • 离开轴并在下一个语句中显示图形。

  • 使用 nrows=1、ncols=2、 向当前图形添加子图index=2

  • 使用 plt 读取图像。

  • 关闭轴并在下一个语句中显示图形。

  • 要显示图形,请使用 show() 方法。

示例

import cv2
from matplotlib import pyplot as plt, image
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
filename = "bird.jpg"
plt.subplot(121)
img = cv2.imread(filename)
plt.axis("off")
plt.imshow(img)
plt.title("with cv2")
plt.subplot(122)
img = image.imread(filename)
plt.axis("off")
plt.imshow(img)
plt.title("with plt")
plt.show()

输出


相关文章