opencv可不可以把两张图片放到同一个窗口里显示?
时间: 2024-10-28 07:07:29 浏览: 23
OpenCV (Open Source Computer Vision Library) 是一个强大的计算机视觉库,它不仅可以读取、处理和显示图像,还可以将它们组合在一起显示在同一窗口。如果你想同时展示两张图片,可以创建一个包含两个窗格的多窗口,或者使用`cv2.imshow()` 函数两次,每次传入不同的图片路径或处理后的图像结果。
以下是一个简单的示例,展示了如何在同一个窗口内显示两张图片:
```python
import cv2
# 读取第一张图片
img1 = cv2.imread('image1.jpg')
# 读取第二张图片
img2 = cv2.imread('image2.jpg')
# 创建一个新的窗口,并设置宽度为两倍原始图片的宽度
cv2.namedWindow('Multi-Image', cv2.WINDOW_NORMAL)
cv2.resizeWindow('Multi-Image', img1.shape[1]*2, img1.shape[0])
# 分别显示两张图片
cv2.imshow('Multi-Image', np.hstack([img1, img2])) # 使用np.hstack合并图片水平显示
# 按任意键继续
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,`np.hstack()` 函数用于水平拼接两张图片,然后通过 `imshow()` 函数将它们显示在一个窗口中。
阅读全文