作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我找不到关于如何执行此操作的任何现有答案,所以我已经在下面编写了自己的代码。这可能不是最快的方法,但效果很好。
最佳答案
numpy.roll()
可用于在任何轴上循环移动数组。例如,对于一维数组,它可以用作:
import numpy as np
arr = np.array(range(10))
# arr = [0 1 2 3 4 5 6 7 8 9]
arr_2 = np.roll(arr, len(arr)//2)
# arr_2 = [5 6 7 8 9 0 1 2 3 4]
可以使用相同的方法水平交换两半图像:
import cv2
import numpy as np
img = cv2.imread('Figure.png', 0)
img = np.roll(img, img.shape[1]//2, axis = 1)
为了垂直交换,np.roll(img, img.shape[0]//2, axis = 0)
。
关于python - 如何在python opencv中水平交换图像的两半,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56968472/
我是一名优秀的程序员,十分优秀!