要在Python中将多个图片放在一个窗口中,你可以使用第三方库如matplotlib或OpenCV来实现。下面我将介绍两种常见的方法。
方法一:使用Matplotlib
使用Matplotlib库的子模块pyplot能够轻松地创建图形窗口并显示多个图片。
import matplotlib.pyplot as plt
# 加载图片
image1 = plt.imread("image1.jpg")
image2 = plt.imread("image2.jpg")
# 创建图形窗口
fig, axs = plt.subplots(1, 2)
# 在窗口中显示图片
axs[0].imshow(image1)
axs[0].axis("off") # 关闭坐标轴
axs[0].set_title("Image 1")
axs[1].imshow(image2)
axs[1].axis("off") # 关闭坐标轴
axs[1].set_title("Image 2")
# 显示窗口
plt.show()
上述代码加载了两张图片(”image1.jpg”和”image2.jpg”),然后创建了一个包含两个子图的图形窗口。通过imshow()
方法显示图片,并使用axis("off")
关闭坐标轴显示。最后使用set_title()
方法设置每个子图的标题,并调用plt.show()
显示窗口。
方法二:使用OpenCV
如果你更习惯使用OpenCV库,可以使用cv2.imshow()
函数在一个窗口中显示多个图片。
import cv2
# 加载图片
image1 = cv2.imread("image1.jpg")
image2 = cv2.imread("image2.jpg")
# 创建一个窗口
cv2.namedWindow("Images", cv2.WINDOW_NORMAL)
# 在窗口中显示图片
cv2.imshow("Images", np.hstack((image1, image2)))
# 等待按下任意键关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()
上述代码使用cv2.imread()
加载了两张图片,并创建了一个窗口。通过np.hstack()
函数将两张图片水平拼接在一起,然后使用cv2.imshow()
函数在窗口中显示。最后通过cv2.waitKey(0)
等待用户按下任意键来关闭窗口。
这两种方法都可以实现将多个图片放在一个窗口中显示,你可以根据自己的需求选择合适的方法。