【问题标题】:How does the reshape function reshape 2 flatten 1d array stacked together horizontally?reshape 函数如何 reshape 2 扁平化水平堆叠在一起的一维数组?
【发布时间】:2019-03-04 12:25:59
【问题描述】:

我有两个尺寸为 100x100 的图像。每当我将它们展平为一维数组时,然后将它们堆叠起来,与堆叠它们时相比,我不会得到相同的输出,即展平它们。这两种方法有什么区别:

First_image  = I1
Second_image = I2
I = np.hstack((I1.flatten(), I2.flatten()))
plt.imshow((I).reshape((100,2*100)));

enter image description here

First_image  = I1
Second_image = I2
I = np.hstack((I1, I2)).flatten()
plt.imshow((I).reshape((100,2*100)));

enter image description here

【问题讨论】:

  • 为什么要一样?

标签: python arrays numpy reshape


【解决方案1】:

附上一个简单的代码sn -p就可以清楚看出两者的区别

 import numpy as np
 a = np.ones((2,5))
 b = np.zeros((2,5))
 I = np.hstack((a.flatten(), b.flatten()))
 print(I)
 I = np.hstack((a, b)).flatten()
 print(I)

一般来说,在此处发布问题之前,请自行对简单数组进行完整性检查。

【讨论】:

  • 是的,区别非常明显。相反,我试图理解为什么当你重塑它时堆叠 2 个扁平数组会返回一个重复的图像?
猜你喜欢
  • 1970-01-01
  • 2021-01-12
  • 1970-01-01
  • 1970-01-01
  • 2020-05-26
  • 2021-02-03
  • 1970-01-01
  • 1970-01-01
  • 2021-03-29
相关资源
最近更新 更多