numpy np.stack和np.concatenate连接数组

数组连接

函数 作用
np.concatenate 连接沿现有轴的数组序列
np.stack 沿着新的轴加入一系列数组
np.hstack 沿着水平方向连接数组,增加列数
np.vstack 沿着竖直方向链接数组,增加行数
  • np.concatenate((arr1, arr2…), axis=0)
    函数用于沿指定轴连接两个或多个数组。axis默认是0,即横向连接。
  • np.hstack(tup)
    沿着水平方向连接数组,增加列数。必须保证所有数组另一个轴上形状相同。等同于axis=0时的concatenate函数。
  • np.vstack(tup)
    沿着水平方向连接数组,增加行数。必须保证所有数组另一个轴上形状相同。等同于axis=1时的concatenate函数。

举例使用:
numpy官档里也强调,concatenate和stack函数在处理3维的像素数据时更有意义。所以,我们用一幅300x300的图片举例,opencv读进来是一个(300, 300, 3)的3维数组。

data = cv2.imread('D:/bird1.jpg')
data.shape
(300, 300, 3)

在这里插入图片描述

concatenate = np.concatenate((data, data))
cv2.imwrite('D:/concatenate.jpg', concatenate)

在这里插入图片描述

concatenate1 = np.concatenate((data, data), axis=1)
cv2.imwrite('D:/concatenate1.jpg', concatenate1)

在这里插入图片描述

hstack = np.hstack((data,data))
cv2.imwrite('D:/hstack.jpg', hstack)

在这里插入图片描述

vstack = np.vstack((data,data))
cv2.imwrite('D:/vstack.jpg', vstack)

在这里插入图片描述
图片来源https://500px.me/

发布了25 篇原创文章 · 获赞 14 · 访问量 1141

猜你喜欢

转载自blog.csdn.net/A_pinkpig/article/details/105312438