У меня есть два трехмерных массива, которые представляют два изображения.Форма каждого массива (1080, 1920, 3).Число 3 представляет значение RGB каждого пикселя в изображении.
Приведенный ниже код заменяет каждый не черный пиксель в первом массиве на значение «параллельного» пикселя (в том же индексе) изДругой массив .:
def replace_nonblack_pixels(first_array, second_array):
mask = first_array.sum(axis=2) < BLACK_THRESHOLD # = 0.01
for i in xrange(first_array.shape[2]):
first_array[:, :, i] = (first_array[:, :, i] * mask) + ((1 mask) * second_array[:, :, i])
Дело в том, что я хочу ускорить код, используя только простые методы, а не циклы Python for.Кто-то сказал мне использовать numpy.ma
, но я ничего об этом не знаю.
Жду ваших ответов, спасибо!