用numpy将数组平铺到位

时间:2018-03-08 20:59:47

标签: python image numpy image-processing scipy

我有一个以RGBA格式存储的图像作为python中的3d numpy数组,即

public class PrimeChecker { public String spinWords(String sentence) { String[] tablica = sentence.split(" "); int y = 0; for ( String x : tablica ) { if ( x.length() >= 5 ) { StringBuilder p = new StringBuilder(x).reverse(); x = p.toString(); } tablica[y] = x; y++; } StringBuilder wynik = new StringBuilder(); y=0; for ( String z : tablica ) { tablica[y] = z; wynik.append(tablica[y]); if (tablica.length > 1 && y != tablica.length - 1 ) { wynik.append(" "); } y++; } return wynik.toString(); } }

将是一个透明的黑色500x500平方。

我希望能够以均匀的颜色快速填充图像。例如,image = np.zeros((500, 500, 4), dtype=np.int16)会使用不透明的红色填充fill_img(some_instance_with_img, (255, 0, 0, 255))中存储的图像。假设some_instance_with_img是包含存储为self的图像的实例,以下代码可以解决问题:

image

然而,它创建了一个全新的数组,只需将self.image重新分配给这个新数组。我想做的是避免这个中间数组。如果def fill_img(self, color): color = np.array(color) shape = self.image.shape self.image = np.tile(color, (shape[0] * shape[1])).reshape(shape) np.tile参数,则看起来像:

out

def fill_img(self, color): color = np.array(color) shape = self.image.shape np.tile(color, (shape[0] * shape[1]), out=self.image) self.image.reshape(shape) 不支持np.tile参数。虽然这种行为可能不存在,但感觉我只是错过了一些东西。任何帮助,将不胜感激。感谢。

0 个答案:

没有答案