如何堆叠五张光流图像代码
时间: 2024-02-18 22:58:54 浏览: 71
以下是一个简单的 Python 代码示例,用于堆叠五张光流图像:
```python
import cv2
import numpy as np
# 读入五张光流图像
flow1 = cv2.imread('flow1.png', cv2.IMREAD_GRAYSCALE)
flow2 = cv2.imread('flow2.png', cv2.IMREAD_GRAYSCALE)
flow3 = cv2.imread('flow3.png', cv2.IMREAD_GRAYSCALE)
flow4 = cv2.imread('flow4.png', cv2.IMREAD_GRAYSCALE)
flow5 = cv2.imread('flow5.png', cv2.IMREAD_GRAYSCALE)
# 调整光流图像的尺寸
h, w = flow1.shape
size = (w, h)
flow2 = cv2.resize(flow2, size)
flow3 = cv2.resize(flow3, size)
flow4 = cv2.resize(flow4, size)
flow5 = cv2.resize(flow5, size)
# 创建一个空的图像,大小与读入的五张光流图像相同
result = np.zeros((h, w, 3), dtype=np.uint8)
# 将五张光流图像按照时间顺序依次堆叠到空的图像上
result[..., 0] = flow1
result[..., 1] = flow2
result[..., 2] = flow3
result[..., 3] = flow4
result[..., 4] = flow5
# 显示结果图像
cv2.imshow('Result', result)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个示例中,我们首先使用 OpenCV 读入五张光流图像,并将它们调整为相同的尺寸(使用了 `cv2.resize()` 函数)。然后,我们创建了一个空的三通道图像 `result`,用于存储堆叠后的结果。最后,我们将五张光流图像按照时间顺序依次堆叠到 `result` 上,并使用 OpenCV 显示结果图像。
阅读全文