Python 将齐次坐标(x0=1)添加到numpy中的图像

Python 将齐次坐标(x0=1)添加到numpy中的图像,python,numpy,machine-learning,image-processing,computer-vision,Python,Numpy,Machine Learning,Image Processing,Computer Vision,我有7张大小为29*29的图片,我想添加一个同质坐标来增强它们 对于所有7个图像,x0=1,但我不确定如何实现 我的原始图像尺寸是 images.shape #(7, 29, 29) 我尝试过的是压缩np.ones,但它最终为第一个特性生成单独的数组,结果得到了维度7*2 np.array([list(a) for a in zip(np.ones([7,1]),images_all[:,:])]).shape #(7,2) # #[[array([1.]), # array([[0., 0

我有7张大小为29*29的图片,我想添加一个同质坐标来增强它们 对于所有7个图像,x0=1,但我不确定如何实现

我的原始图像尺寸是

images.shape 
#(7, 29, 29)
我尝试过的是压缩np.ones,但它最终为第一个特性生成单独的数组,结果得到了维度7*2

np.array([list(a) for a in zip(np.ones([7,1]),images_all[:,:])]).shape
#(7,2)
#
#[[array([1.]),
# array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
      0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
     [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
      0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
 ....
如您所见,它将1添加为单独的数组,并作为第一个元素追加

此外,我还尝试在图像中循环,并在第一个元素中插入1,但它的维数为30,并给出了错误

for i in range(len(images)):
    images[i][0] = np.insert(images[i][0], 0, 1., axis=0)
ValueError:无法将输入数组从形状30广播到形状29


首先创建一个较大的数组,重塑原始数组并更新较大的数组

padded_images = np.ones((7,29*29+1))
padded_images[:,1:] = images.reshape(7,29*29)

它将在每张图片中添加30个,根据我的理解,它应该只在每张图片中添加1个?不确定。还有,你把它推到最后而不是第一个前置词?@A.B你想要什么输出形状?如果可能的话,7842可以工作,因为29*29=841,但是把每个元素的第一个元素推到了1,它就变成了842行,明白了吗:我怎么才能学习这些东西维度操纵,重新索引,重塑etc@A.B看看这个-